Https通信原理

https是基于安全目的的Http通道,其安全基础由SSL层来保证。最初由netscape公司研发,主要提供了通信双方的身份认证和加密通讯方法。如今普遍应用于互联网上安全敏感通信。算法

图片描述

SSL协议通讯过程浏览器

(1) 浏览器发送一个链接请求给服务器;服务器将本身的证书(包含服务器公钥S_PuKey)、对称加密算法种类及其余相关信息返回客户端;安全

(2) 客户端浏览器检查服务器传送到CA证书是否由本身信赖的CA中心签发。如果,执行4步;不然,给客户一个警告信息:询问是否继续访问。服务器

(3) 客户端浏览器比较证书里的信息,如证书有效期、服务器域名和公钥S_PK,与服务器传回的信息是否一致,若是一致,则浏览器完成对服务器的身份认证。加密

(4) 服务器要求客户端发送客户端证书(包含客户端公钥C_PuKey)、支持的对称加密方案及其余相关信息。收到后,服务器进行相同的身份认证,若没有经过验证,则拒绝链接;spa

(5) 服务器根据客户端浏览器发送到密码种类,选择一种加密程度最高的方案,用客户端公钥C_PuKey加密后通知到浏览器;图片

(6) 客户端经过私钥C_PrKey解密后,得知服务器选择的加密方案,并选择一个通话密钥key,接着用服务器公钥S_PuKey加密后发送给服务器;域名

(7) 服务器接收到的浏览器传送到消息,用私钥S_PrKey解密,得到通话密钥key。class

(8) 接下来的数据传输都使用该对称密钥key进行加密。基础

图片描述
图片描述

上面所述的是双向认证 SSL 协议的具体通信过程,服务器和用户双方必须都有证书。因而可知,SSL协议是经过非对称密钥机制保证双方身份认证,并完成创建链接,在实际数据通讯时经过对称密钥机制保障数据安全性

相关文章
相关标签/搜索