https的那些事儿

什么是HTTPS

  • HTTPS = HTTP + TLS
  • TLS是一种安全传输协议,保证HTTPS请求与响应的数据安全性

HTTPS请求响应的大体流程

  • 第一步:TLS握手,协商加密密钥html

    • client请求server,say hello
    • server发送证书、签名算法、加密算法等信息
    • client验证证书合法性
    • client与server协商数据传输的对称密钥
  • 第二步:应用数据传输,用协商经过的密钥加密应用数据,发送加密数据

证书合法性校验

证书合法性校验用到数字签名技术。合法的证书由CA机构签发,证书中都会带上Signature,Signature是证书的摘要(HASH)用CA的私钥加密生成的。算法

证书校验流程:segmentfault

  • client用一样的算法生成证书摘要A
  • client用CA的公钥解密Signature得到摘要B
  • client比较A和B是否相同,相同则证书合法。若是证书被修改过,A和B必然不会相同。

多级证书的校验:安全

CA机构也是分级的,顶的CA机构的证书是根证书。通常网站的证书不多是根证书签发的,这样就会一级一级往上校验证书的合法性。session

参考文章

相关文章
相关标签/搜索