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 的哪些问题?

因为HTTP时明文传输,所有有很大的风险。HTTPS 在 HTTP 与 TCP 层之间加入了 SSL/TLS 协议,可以很好的解决这些风险:
  • 信息加密:交互信息无法被窃取,但你的号会因为「自身忘记」账号而没。
  • 校验机制:无法篡改通信内容,篡改了就不能正常显示,但百度「竞价排名」依然可以搜索垃圾广告。
  • 身份证书:证明淘宝是真的淘宝网,但你的钱还是会因为「剁手」而没。

 三、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的区别

相关