HTTPS 的工作过程?
1、 客户端发送自己支持的加密规则给服务器,代表告诉服务器要进行连接了;
2、 服务器从中选出一套加密算法和 hash 算法以及自己的身份信息(地址等)以证书的形式发送给浏览器,证书中包含服务器信息,加密公钥,证书的办法机构;
3、客户端收到网站的证书之后要做下面的事情:
- 验证证书的合法性;
-
如果验证通过证书,浏览器会生成一串随机数,并用证书中的公钥进行加密;
-
用约定好的 hash 算法计算握手消息,然后用生成的密钥进行加密,然后一起发送给服务器。
4、服务器接收到客户端传送来的信息,要做下面的事情:
- 4.1 用私钥解析出密码,用密码解析握手消息,验证 hash 值是否和浏览器发来的一致;
- 4.2 使用密钥加密消息;
5、如果计算法 hash 值一致,握手成功。
评论(4)
3的第三行开头少了个”如”
已改
证书的办法机构,错字
颁发