最近详细研究了下https流程。简单记录下一些重点以及问题。
仅供参考。
说明CA(证书管理机构)功能之前,先简介一下https大概流程:
对客户端同服务器的通信进行加密,确保安全。
第一步:
证书校验,通过CA校验,怎样校验? 后面会提到。
第二步:
客户端取出证书里的服务器公钥。 可以用公钥加密网页了!
但是,非对称加密效率低,实际并不这样做,而是客户端生成一个对称加密的key,通过公钥加密后传给服务器。
后面服务器和客户端就用这个约定的key对通信进行加密了。
第三步:
到了这一步,采用约定的key加密网页, 对称加密,速度快很多。
CA校验:
这里有个问题,客户端怎么知道访问的网站是可靠的(不是其他人冒充)。
比如我冒充csdn网站,然后你用我的公钥加密登录csdn的密码,我用自己的私钥解密,就可以获得你的登录密码。
这时,CA就有作用了,为了保证客户端获得的公钥是可靠的,不是别人冒充,CA用于给网站颁发一个可信的证书。
CA就用于保证