(自用面试题)HTTPS是如何保证安全的?

259 阅读1分钟
  • 混合加密
    HTTPS采用的是对称加密和非对称加密结合的混合加密方式: 在通信建立前采用非对称加密的方式交换会话秘钥, 后续就不再使用非对称加密;在通信过程中全部使用对称加密的会话秘钥的方式加密明文数据。

拓展:  
对称加密只使用一个密钥, 运算速度快, 密钥必须保密, 无法做到安全的密钥交换。
非对称加密使用两个密钥(公钥和私钥), 公钥可以任意分发, 私钥保密, 解决了密钥交换问题但速度慢。

(自用面试题)HTTPS是如何保证安全的?0.PNG

  • 摘要算法/散列函数/哈希函数
    摘要算法能够为数据生成独一无二的指纹, 用于校验数据的完整性, 解决了篡改的⻛险。客户端在发送明文之前会通过摘要算法算出明文的指纹, 发送的时候把指纹+明文一同加密成密文后, 发送给服务器, 服务器解密后, 用相同的摘要算法算出发送过来的明文, 通过比较客户端携带的指纹和当前算出的指纹, 若指纹相同, 说明数据是完整的。

  • 数字证书
    客户端先向服务器端索要公钥, 然后用公钥加密信息, 服务器收到密文后, 用自己的私钥解密。这就存在些问题, 如何保证公钥不被篡改和信任度呢? 所以这里就需要借助CA(证书权威机构), 将服务器公钥放在数字证书中, 只要证书是可信的, 公钥就是可信的。通过数字证书的方式实现了身份认证,解决冒充的⻛险。

(自用面试题)HTTPS是如何保证安全的?1.PNG