1. http和https的区别
- http是明文传输,敏感信息容易被中间劫持。
- https在http协议的基础上,增加了加密的特性,数据被劫持了也无法解密。
- 现代浏览器已经开始强制使用https协议。
2. https的加密方式
2.1 对称加密
对称加密:使用一个key负责加密、解密。
对称加密的缺点:在加密数据传递的过程中,如果key也被劫持了,那么加密就失效了。
2.2 非对称加密
非对称加密:使用一对key,用私钥key加密之后,使用公钥pubkey来解密。
https同时使用了对称加密和非对称加密,首先进行非对称加密,然后使用非对称加密的数据作为下一阶段对称加密的key。第一阶段使用非对称加密是为了增加安全性。在第二阶段使用对称加密可以节省成本。
3. https证书
使用https进行传输时,会发生中间人攻击(key和pubkey可能被替换),浏览器通过校验第三方证书来解决这个问题。