图解HTTP第七章:确保web安全的https

  • 在http协议中有可能存在信息窃听或者身份伪装等安全问题。使用https通信机制可以有效的防止这些问题。

7.1http的缺点

  1. 通信(http协议通信的请求和响应的内容)使用明文(不加密),内容可能会被窃听。那么如何保护信息呢?
    这里写图片描述
    1. 通信路线加密。Http协议中没有加密机制,但可以通过和SSL(安全套接层)或TLS(安全层传输协议)的组合使用,加密http的通信内容。与SSL组合使用的http被称为https
      这里写图片描述
    2. 内容的加密。对http协议传输的内容本身加密,也就是http报文内所含的内容进行加密处理。不过要求客户端和服务器同时具备加密和解密机制。这里写图片描述
  2. 不验证通信方的身份,因此有可能遭遇伪装
    • 由于不存在确认通信方的处理步骤,任何人都可以发起请求。服务器只要接收到请求,不管对方是谁都会返回一个响应。
      这里写图片描述
    • 因此不确认通信方会存在以下几种隐患
      这里写图片描述
    • 解决方法:虽然http协议无法确定通信方,但如果使用SSL就可以,SSL使用了一种被称为证书的手段,用于确定通信方。
      这里写图片描述
  3. 无法证明报文的完整性(信息的准确性),所以有可能已遭篡改
    • 在请求或者响应送出之后对方接受之前这段时间之内,即时请求或响应的内容遭到篡改,也没办法知道。
      这里写图片描述
    • 在请求或响应在传输途中,遭遇攻击者拦截并篡改内容的攻击称为中间人攻击(MITM)
      这里写图片描述
    • 如何防止呢? 比较常用的是MD5和SHA-1等散列值校验,以及用来确认文件的数字签名方法

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

这里写图片描述
* 吧添加了加密及认证机制的http称为https(http Secure),https并不是应用层的一种新协议,只是http通信接口部分用SSL和TLS协议代替了而已。https其实就是身披SSL协议这层外壳的http
* 采用SSL后,http就有了https的加密,整数和完整性保护这些功能。SSL是独立于http的协议,不光是http,其他运行在应用层的SMTP和Telnet等协议课配合SSL协议使用,可以说SSL是世界上应用最广泛的网络安全技术。
* SSL采用一种公开密钥加密的加密处理方式。(加密算法是公开的,而密钥是保密的)
* 共享密钥加密:加密和解密公用一个密钥的方式成为共享密钥加密,也叫做对称密钥加密
这里写图片描述
* 缺点:以这种方式加密时必须将密钥也发送给对方,但在互联网上转发密钥时,如果通信被监听那么密钥就可能被攻击者得到
* 这里写图片描述
* 使用两把密钥的公开密钥加密。公开密钥加密使用一堆非对称的密钥,一把叫做私有密钥,另一把叫做公开密钥。发送密文的一方使用对方的公开密钥进行加密处理,对方收到加密信息后,在使用自己私有的密钥进行解密。相对于共享密钥加密,其处理速度要慢一点
这里写图片描述
* HTTPS采用这两者混合加密机制
* 这里写图片描述

猜你喜欢

转载自blog.csdn.net/ac_greener/article/details/80202616