美文网首页
Https定义及其加密过程

Https定义及其加密过程

作者: MadnessXiong | 来源:发表于2019-10-24 16:47 被阅读0次

    加密及签名参考-Base64,Hash,加密,签名知识点梳理

    1. Https

    • 定义:Https是基于Http标准并通过SSL层对TCP传输数据进行加密,所以Https是对Http+SSL/TCP的简称。

    2. SSL/TLS

    • 定义:SSL是指安全套接字层,是基于HTTP之下TCP之上的一个协议层,可确保互联网连接安全,保护两个系统之间发送的任何敏感数据。TLS是更为安全的SSL。

    3. Https加密过程:

      1. 客户端通过发送client hello报文开始SSL通信(建立在三次握手已完成的基础上)。报文中包含客户端支持的SSL指定版本,加密组件(所使用的加密算法,如对称加密算法,非对称加密算法,Hash算法等及密钥长度等)
      1. 服务器以server hello报文作为应答。在报文中包含SSL版本及加密组件。服务器的加密组件内容是从接收到的客户端加密组件中选出来的。
      1. 服务器发送certificate报文,报文中包含公开密钥证书(公钥)
      1. 服务器发送server hello done报文通知客户端,最初阶段的协商部分结束
      1. 客户端使用根证书验证服务器证书的合法性,然后客户端以client key exchange报文作为回应。报文中包含通信加密中一种被称为Pre-master secret的随机密码串。并且已使用服务器的公钥对其进行加密,该密码串是客户端和服务器创建加密密钥的关键信息。
      1. 客户端发送finished报文,服务器同样finished报文,如果双方都能对报文进行解密验证,那么SSL连接就算建立成功。(以上过程中应用层发送数据时会附加MAC secret对消息进行验证(类似于Hash和签名的方式))

    3. Https慢的原因

      1. 除了必要的Http通信外,还必须进行SSL通信,通信量增加
      1. SSL必须进行加密处理,在客户端和服务器都要进行加密运算,因此会消耗更多的客户端和服务器资源,导致负载增加。

    相关文章

      网友评论

          本文标题:Https定义及其加密过程

          本文链接:https://www.haomeiwen.com/subject/iwwnyctx.html