目录
https相比于http更加安全,三个优势:
下面是一些必须知道的问题
1.对称加密与非对称加密:
2.对称加密的密钥SK如何产生和传输:
3.https有两套非对称加密
4.https的哈希一共用于两个地方
5.https的整个流程
https相比于http更加安全,三个优势:
- 数据加密:即https中的对称加密和非对称加密
- 身份验证:即https的CA和证书
- 完整性校验:即https的哈希
下面是一些必须知道的问题
1.对称加密与非对称加密:
在网络传输时使用对称加密(因为速度快)。将对称加密的密钥使用非对称加密的公钥进行加密,然后发送出去,接收方使用私钥进行解密得到对称加密的密钥。
2.对称加密的密钥SK如何产生和传输:
两个过程:
①协商对称加密秘钥SK的非对称加密阶段,称为:TLS握手。
3种较为常见的办法:
- 基于非对称加密算法
- 基于专用密钥交换算法,常见有DH、ECDH等
- 基于共享的secret,常见有PSK,SRP等
②使用SK对数据(对话内容)进行对称加密的阶段,称为数据通信阶段。发送端首先用密钥SK对通信内容进行对称加密,接着通过网络传输出去;对端收到数据后,用SK先将数据解密,于是就得到了通信内容。
3.https有两套非对称加密
第一套用于协商对称加密秘钥SK;第二套用于数字证书签名加密。这两者的区别是:前者是服务器端(如果是双向验证的话,客户端也会有一套非对称加密公私钥)产生的。私钥在服务端上;后者是CA机构产生的,私钥在CA机构那边。实际操作中,这两种都不建议省略。
4.https的哈希一共用于两个地方
①证书的数字签名CA
②对称加密的Message Digest:在数据通信阶段,SSL/TLS 会对原始消息做一次哈希,得到消息摘要。对端接收到消息后,使用协商出来的对称加密秘钥解密数据包,得到原始的消息,接着也做一次相同的哈希算法得到摘要,对比发送过来的消息摘要和计算出来的消息摘要是否一致,来判断通信数据是否被篡改。
5.https的整个流程