HTTP的不足之处

  • 通信使用明文(未加密的报文),内容可能会被窃听
  • 不验证通信方的身份,可能遭遇伪装
  • 无法证明报文的完整性,可能遭遇篡改

加密方法

通信加密:通过SSL(Secure Socket Layer,安全套接层)或TLS(Transport Layer Security,传输安全层协议),建立安全的通信线路,在这条线路上使用HTTP通信

内容加密:对参与通信的内容本身进行加密,其不同于SSL和TLS将整个通信线路加密处理,加密的内容仍有可能被篡改

HTTPS=HTTP+加密+认证+完整性保护

HTTPS只是HTTP通信接口部分用SSL或TLS等协议代替而已。当通信时,HTTP先与SSL通信,再由SSL和TCP进行通信。
其他运行在应用层的SMTP和Telnet等协议均可配合SSL协议使用。

加密

  • 共享**加密(对称**加密):加密和解密使用同一把**,以共享**方式加密时必须将**也发送给对方,但当在互联网上传送**时,很有可能被窃取。
  • 公开**加密(非对称**加密):该加密方法使用了一对**,一把叫做公开**(可随意发布),另一把叫做私有**(不可转交给他人),发送密文的一方使用对方的公开**进行加密处理,对方收到被加密的信息后,再使用自己的私有**进行解密。避免了传输**被窃取的风险。

HTTPS采用混合加密机制,使用公开**加密的方式交换用于共享**加密的**,确保交换**安全的情况下,使用共享**加密的方式进行通信

认证
数字证书认证机构(CA)和其相关机构颁发的公开**证书,可以使客户端验证服务器公开**的真实性。
不但可以给服务器发放证书,还可以给客户端发放证书,进行客户端认证,但是客户端必须自己安装证书,一般应用于网上银行等安全性要求较高的情况
使用OpenSSL,可以构建一套属于自己的认证机构,给自己的服务器颁发证书,称为自签名证书,但往往可用度不高。

HTTP学习笔记9 HTTPS

完整性保护
HTTPS应用层在发送数据时会附加 MAC(Message Authentication Code)的报文摘要,其能查知报文在传输过程中是否遭遇篡改,从而保护报文的完整性
HTTP学习笔记9 HTTPS

HTTPS通信过程
HTTP学习笔记9 HTTPS
HTTP学习笔记9 HTTPS

HTTPS的不足
相比HTTP,HTTPS除去TCP连接、HTTP发送请求/响应的时间外,还额外需要建立SSL连接,增加了网络通信量,使通信速度变慢,同时,由于使用了加密处理,客户端和服务器都需要进行加密和解密的运算,因此会消耗更多的硬件资源。SSL加速器可在一定程度上缓解这个问题。

相关文章:

  • 2021-10-14
  • 2021-11-21
  • 2021-11-14
  • 2021-10-17
  • 2021-09-03
  • 2021-04-01
猜你喜欢
  • 2018-05-22
  • 2021-05-05
  • 2022-12-23
  • 2021-10-16
  • 2021-05-01
  • 2021-11-06
  • 2021-09-05
相关资源
相似解决方案