SSL认证过程 目前SSL证书认证分为单向认证域双向认证,单向认证只要求站点部署了ssl证书,任何用户都可以去访问(IP被限制除外等),只是服务端提供了身份认证。而双向认证则是需要是服务端需要客户端提供身份认证,只能是服务端允许的客户能去访问,安全性相对于要高一些。 一般Web应用都是采用单向认证的,因为用户数目广泛,且无需做在通讯层做用户身份验证,一般都在应用逻辑层来保证用户的合法登入。但如果是企业应用对接,情况就不一样,可能会要求对客户端做身份验证。这时就需要做双向认证。 SSL单向认证
证书是否过期 发型服务器证书的CA是否可靠 返回的公钥是否能正确解开返回证书中的数字签名 服务器证书上的域名是否和服务器的实际域名相匹配 验证通过后,将继续进行通信,否则,终止通信
在接下来的会话中,服务器和客户端将会使用该密码进行对称加密,保证通信过程中信息的安全。 SSL双向认证过程 ① 浏览器发送一个连接请求给安全服务器。 ② 服务器将自己的证书,以及同证书相关的信息发送给客户浏览器。 ③ 客户浏览器检查服务器送过来的证书是否是由自己信赖的 CA 中心所签发的。如果是,就继续执行协议;如果不是,客户浏览器就给客户一个警告消息:警告客户这个证书不是可以信赖的,询问客户是否需要继续。 ④ 接着客户浏览器比较证书里的消息,例如域名和公钥,与服务器刚刚发送的相关消息是否一致,如果是一致的,客户浏览器认可这个服务器的合法身份。 ⑤ 服务器要求客户发送客户自己的证书。收到后,服务器验证客户的证书,如果没有通过验证,拒绝连接;如果通过验证,服务器获得用户的公钥。 ⑥ 客户浏览器告诉服务器自己所能够支持的通讯对称密码方案。 ⑦ 服务器从客户发送过来的密码方案中,选择一种加密程度最高的密码方案,用客户的公钥加过密后通知浏览器。 ⑧ 浏览器针对这个密码方案,选择一个通话密钥,接着用服务器的公钥加过密后发送给服务器。 ⑨ 服务器接收到浏览器送过来的消息,用自己的私钥解密,获得通话密钥。 ⑩ 服务器、浏览器接下来的通讯都是用对称密码方案,对称密钥是加过密的。 |
| 本文出处: http://www.toutiao.com/a6396798523350827266/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|