8.后来,苏珊感觉不对劲,发现自己无法确定公钥是否真的属于鲍勃。她想到了一个办法,要求鲍勃去找第三方权威机构“证书中心”(certificate authority,简称CA),为公钥做认证。证书中心用自己的私钥,对鲍勃的公钥和一些相关信息一起加密,生成“数字证书”(Digital Certificate)。
9.鲍勃拿到数字证书以后,就可以放心了。以后再给苏珊写信,只要在签名的同时,再附上数字证书就行了。
10.苏珊收信后,先用CA的公钥解开数字证书,就可以安全地拿到鲍勃真实的公钥了,然后就能证明“数字签名”是否真的是鲍勃签的。
HTTPS 通信过程通过上面鲍勃与他的小伙伴的通信,我们已经可以大致了解一个安全通信的过程,也可以了解基本的加密、解密、认证等概念。HTTPS 就是基于这样一个逻辑设计的。在HTTPS之前我们知道网页传输是HTTP协议,由于HTTP是明文传送,所以存在三大风险:
- 被窃听的风险:第三方可以截获并查看你的内容;
- 被篡改的危险:第三方可以截获并修改你的内容;
- 被冒充的风险:第三方可以伪装成通信方与你通信。
HTTP 因为存在以上三大安全风险,所以才有了 HTTPS ,HTTPS协议也正是利用加密、数字签名、数字证书等技术解决上述问题。HTTPS协议是在HTTP和TCP层之间添加了一个安全传输层协议,一般是SSL或TLS,也就是把HTTP的数据包经过加密处理了。