Skip to content
https和http有什么不同?
  • 有ssl/tls连接
    • CA机构验证可靠性
    • 对称加密和非对称加密来确保安全
  • 端口 80和443
https
  • 数字签名确保来源可靠:用非对称加密来协商一个对称加密的密钥,后续都用这个密钥来加密通信。

服务器通过CA机构+数字签名,向客户端传递公钥,客户端生成会话密钥,用这个公钥来对会话密钥进行对称加密。

证书 = [服务器的公钥+数字签名+个人信息]

其中客户端收到后,也需要向CA验证合法性。

  • 哈希数据防篡改
  • CA机构进行身份验证防伪造:数字证书
https HTTPS TLS 握手过程
  • 公钥加密,私钥解密: 内容不泄露;

  • 私钥加密,公钥解密: 内容不篡改;

  • 四步走

    • 客户端向服务器发起请求,发送自己支持的TLS版本以及加密算法套件和一个随机数

    • 服务端选择一个算法和tls版本,以及 SSL 证书,以及一个随机数,发给客户端。

    • 客户端验证证书合法性,生成“预主秘钥”,然后 客户端和服务端通过【客户端随机数,服务端随机数,预主密钥】 各自计算会话密钥。

    • 服务器用自己的私钥解密,获取预主秘钥,计算出会话密钥,成功解密。

  • 哪一步防止重放?

    • 随机数啊。
本站访客数 人次 本站总访问量