Hello HTTPS!
HTTPS
优点
- 防止劫持
- 防篡改
- 防监听
缺点
- 通信效率降低
- 费用贵
- 需要维护证书
简单原理
- CA:证书颁发机构。可以认为是权威机构,服务器持有权威机构颁发的SSL证书,才是可以被信任的证书。
- 使用到的算法:对称加密,非对称加密,哈希算法
- 通信(握手)流程:
- 客户端发送随机数N1
- 服务器收到N1,发送公钥和随机数N2
- 客户端解析公钥:检查公钥是否被篡改(哈希校验);检查服务器发送的SSL证书是否在CA(浏览器或者操作系统会内置CA)列表中。
- 客户端发送随机数N3和使用公钥加密的对称秘钥给服务器
- 服务器使用只有自己拥有的私钥解密,得到对称秘钥
- 双方使用对称秘钥开始通信
- HTTPS:HTTP + SSL
- SSL:Secure Scoket Layer