SSL原理

SSL原理

  参考:http://leo-dream.iteye.com/blog/313592

  1,客户端向服务端发出请求,服务端将公钥(以及服务端证书)响应给客户端;
  2,客户端接收到服务器端端公钥与证书,验证证书是否在信任域内,不信任则结束通信,信任则使用服务端传过来的公钥生成一个“预备主密码”,返回给服务端。
  3,服务端接收客户端传过来的“预备主密码”密文,使用私钥解密。非对称加密的安全性也就在于此了,第三方无法获取到“预备主密码”的明文,因为除了服务端,其他任何人是没有私钥的。
  4,双方使用“预备主密码”生成用于会话的“主密码”。确认后,结束本次SSL 握手,停止使用非对称加密。
  5,双方使用“主密码”对称加密传输数据,直到本次会话结束。
  总结整个流程:先采用非对称加密模式,保证“主密码”只被通信双方获知,而后使用传统的对称加密方式通信,这样,保证了密钥安全(即“主密码”)就等于保证了数据安全。之所以建立安全连接后,转而使用对称加密,是因为非对称加密的运算量很大,用于“常态”的数据通信十分低效。

      简而方之,先用非对称加密交换生成密码的key,然后用各自生成的密码进行加密交换数据。

原文地址:https://www.cnblogs.com/tekkaman/p/2674025.html