什么是HTTPS
HTTPS = HTTP + TLS
TLS是一种安全传输协议,保证HTTPS请求与响应的数据安全性
HTTPS请求响应的大致流程
第一步:TLS握手,协商加密密钥
client请求server,say hello
server发送证书、签名算法、加密算法等信息
client验证证书合法性
client与server协商数据传输的对称密钥
第二步:应用数据传输,用协商通过的密钥加密应用数据,发送加密数据
证书合法性校验
证书合法性校验用到数字签名技术。合法的证书由CA机构签发,证书中都会带上Signature,Signature是证书的摘要(HASH)用CA的私钥加密生成的。
证书校验流程:
client用同样的算法生成证书摘要A
client用CA的公钥解密Signature获得摘要B
client比较A和B是否相同,相同则证书合法。如果证书被修改过,A和B必然不会相同。
多级证书的校验:
CA机构也是分级的,顶的CA机构的证书是根证书。一般网站的证书不可能是根证书签发的,这样就会一级一级往上校验证书的合法性。
参考文章
https://security.stackexchang…
https://segmentfault.com/a/11…
https://imququ.com/post/optim…
https://www.cnblogs.com/snowa…
http://www.runoob.com/w3cnote…
https://www.jianshu.com/p/94d…
发表回复