HTTPS简单介绍及HTTP与HTTPS的区别
一、HTTPS协议
HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道, 在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。
HTTPS 在HTTP 的基础下加入SSL 层, HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。
HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。 它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。
二、HTTPS 解决了 HTTP 的哪些问题?
- 信息加密:交互信息无法被窃取,但你的号会因为「自身忘记」账号而没。
- 校验机制:无法篡改通信内容,篡改了就不能正常显示,但百度「竞价排名」依然可以搜索垃圾广告。
- 身份证书:证明淘宝是真的淘宝网,但你的钱还是会因为「剁手」而没。
三、HTTPS如何解决安全风险:
HTTP+ 加密 + 认证 + 完整性保护 =HTTPS
- 混合加密(对称加密和非对称加密)的方式实现信息的机密性,解决了窃听的风险。
- 摘要算法的方式来实现完整性,它能够为数据生成独一无二的「指纹」,指纹用于校验数据的完整性,解决了篡改的风险。
- 将服务器公钥放入到数字证书中,解决了冒充的风险。
四、HTTPS通信流程
简介版:
1. 客户端发起HTTPS请求
2. 服务端向客户端发送CA证书
3. 客户端验证证书,取出公钥,算出Pre-master secret随机数(对称秘钥)
4. 客户端发送用公钥加密之后的Pre-master secret,并通知服务端之后都采用此随机数加密数据。
5. 服务端用私钥解密Pre-master secret,算出master secret,至此客户端Pre-master secret等于服务端master secret, 双方用此随机数加密解密数据。
6. 加密解密HTTP文本。
具体版:
五、HTTP和HTTPS的区别