https的概念
概念
http:超文本传输协议
1https的实现原理
https与http的区别
1.http:超文本传输协议
https:安全的http通道
http TCP/IP
http +SSL/TLS = https
HTTPS | HTTP | |
---|---|---|
安全性 | 高 | 低 |
加密传输 用的是对称加密和非对称加密混合加密 | 明文传输 | |
身份认证 可信的第三方证书 | 身份冒充 | |
保证完整性 策略验证(摘要) | 传输过程中可能被篡改 | |
不可否认/抵赖 | 无法保证事务的真实性 | |
端口 | 443 | 80 |
灵活性 | 低 | 高 |
访问速度 | 慢 | 快 |
经济适用性 | 收费(CA机构认证证书) | 免费 |
安全性 | 高 | 低 |
OSI七层协议
OSI七层协议 | |
---|---|
1物理层 | MAC |
2数据链层 | CSMA/CA、CSMA/CD |
3网络层 | IP、ARP、ICMP |
4传输层 | TCP UDP |
5会话层 | SSL/TLS |
6表示层 | view |
7应用层 | HTTP |
五层协议 567—合并—》 应用层
五层协议 | |
---|---|
1物理层 | MAC |
2数据链层 | CSMA/CA、CSMA/CD |
3网络层 | IP、ARP、ICMP |
4传输层 | TCP UDP |
5应用层 | 5会话层 6表示层 7应用层 SSL/TLS view HTTP |
TCP/IP四层协议 12-合并-》 网络接口层
TCP/IP四层协议 | |
---|---|
1网络接口层 | 物理层 MAC、 数据链路层 CSMA/CA、CSMA/CD |
2网络层 | IP、ARP、ICMP |
3传输层 | TCP UDP |
4应用层 | 5会话层 6表示层 7应用层 SSL/TLS view HTTP |
https(TLS1.2)工作流程
- client发起请求 端口443
- server返回公钥证书
- client验证证书
- client 生成对称密钥,用公钥加密后发送给Server
- Server使用私钥解密,得到对称密钥
- C/S双方使用对称密钥
- 加密明文并发送
- 解密密文得到明文
https(TLS1.3)工作流程
HTTPS (TLS1.2)四次握手
- 客户机会发送ClientHello(TLS 版本号 随机数Random C 密码套件) 到Server
- 服务器根据(ClientHello)信息选用协议版本发送ServerHello 与客户机通信 (TLS版本号 随机数 Random S Cipher Suite (ECDHE(加密算法)) 证书 ServerKeyExchange(包含很多信息))
- 客户机收到信息后检验运算后 使用服务器发送的加密算法生成对称密钥加密后发送给服务器
- 服务器收到后发送确认信息给到客户机
TCP三次握手 https://blog.csdn.net/qq_40337086/article/details/112443124
加密流程
- 服务器收到客户机发送的请求后将公钥证书返回给客户机
- 客户机用公钥加密对称密钥后将加密后的对称密钥发送给服务器
- 服务器用私钥解密后拿到对称密钥
- S/C使用对称密钥进行信息的加密解密/信息的传输
https实现原理
- 机密性
- 完整性
- 身份认证
- 不可否认
1. 机密性
机密性的实现
- 混合加密 : 非对称加密 + 对称加密
- 非对称加密 : 公钥&私钥
- 安全传输对称密钥
- 常见算法 RSA(TLS1.3强制淘汰) ECC
- 速度慢
- 对称加密 :对称密钥
- 使用对称密钥,加密/解密数据
- 常见算法 :AES、ChaCha20
- 速度快
2. 完整性
完整性的实现
- 完整性 :传输过程中数据(数据包括公钥)可能被修改(真正的完整性要建立在机密性上,所以摘要也需要加密)
- 发送一个与原文等价的数字摘要
- 摘要算法: 一种压缩算法(hash函数)
- 任意长度 -> 固定长度摘要字符串,指纹
- 单向加密算法,无法解密,不能逆推原文
- 常见算法 : SHA-2
- SHA224(28B) SHA256(32B) SHA384(48B)
- 哈希冲突的解决办法
- 再哈希法、链地址法、开放寻址法
3. 身份认证和不可否认
- 数字签名:防止客户端伪装
- 私钥加密,公钥解密
- 签名:使用私钥加密摘要,得到数字签名
- 验签:使用公钥解密签名,得到摘要原文
- 对摘要加密,而非原文,降低运算量
- 数字证书和CA:可信第三方
- 数字证书:包含序列号、用途、颁发者、有限时间等,打包后生成签名
- 证书等级:DV、OV、EV
- 根证书/自签名证书 :ROOT CA