图解HTTP-7-确保Web安全的HTTPS

  1. HTTP缺点
  2. HTTP+加密+认证+完整性保护=HTTPS

HTTP缺点

  • 通信使用明文(不加密),内容可能会被窃听

    • 如何加密处理防止被窃听?

      • 将通信加密
        HTTP 协议中没有加密机制,但可以通过和 SSL(Secure Socket Layer,安全套接层)或
        TLS(Transport Layer Security,安全层传输协议)的组合使用,加密 HTTP 的通信内容。

        用 SSL 建立安全通信线路之后,就可以在这条线路上进行 HTTP 通信了。
        与 SSL 组合使用的 HTTP 被称为 HTTPS(HTTP Secure,超文本传输安全协议)或 HTTP over SSL。

      • 将内容加密
        客户端需要对HTTP报文进行加密处理在发送请求,但是内容仍有被篡改的风险。

  • 不验证通信方的身份,因此有可能遭遇伪装

    • 任何人都可发起请求,会存在以下隐患
      • 无法确定请求发送至目标的 Web 服务器是否是按真实意图返回响应的那台服务器。有可能是已伪装的 Web 服务器。
      • 无法确定响应返回到的客户端是否是按真实意图接收响 应的那个客户端。有可能是已伪装的客户端。
      • 无法确定正在通信的对方是否具备访问权限。因为某些 Web 服务器上保存着重要的信息,只想发给特定用户通信的权限。
      • 无法判定请求是来自何方、出自谁手。
      • 即使是无意义的请求也会照单全收。无法阻止海量请求下的 DoS 攻击(Denial of Service,拒绝服务攻击)。
    • 查明对手的证书
      • 使用SSL可以确定通信方
  • 无法证明报文的完整性,所以有可能已遭篡改

    • 接收到的内容可能有误
      请求或响应在传输途中,遭攻击者拦截并篡改内容的攻击称为中间人攻击(MITM)
    • 如何防止篡改
      常用的是 MD5 和 SHA-1等散列值校验的方法,用来确认文件的数字签名方法。(可惜的是,用这些方法也依然无法百分百保证确认结果正确。因为 PGP 和 MD5 本身被改写的话,用户是没有办法意识到的。)

    为了有效防止这些弊端,有必要使用 HTTPS。SSL 提供认证和加 密处理及摘要功能。仅靠 HTTP 确保完整性是非常困难的,因此 通过和其他协议组合使用来实现这个目标。

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

HTTPS并非是应用层的一种新协议,只是HTTP通信接口部分用SSL和TLS协议代替。

通常,HTTP直接和TCP通信,当使用SSL时,则变为先和SSL通信,再由SSL和TCP通信。

  • 相互交换密钥的公开密钥加密技术
    SSL 采用一种叫做公开密钥加密(Public-key cryptography)的加密处理方式。

    • 共享密钥加密的困境
      加密和解密用同一个密钥的方式称为共享密钥加密,也叫做对称密钥加密。但发送密钥也有被窃听的风险。

    • 使用两把密钥的公开密钥加密
      发送密文一方使用公开密钥进行加密处理,对方收到信息后,在用自己的私有密钥进行解密。(解密过程就是对离散对数进行求值)

    • HTTPS采用混合加密机制
      在交换密钥环节使用公开密钥加密方式,之后的建立通信交换报文阶段则使用共享密钥加密方式。

      1. 使用公开密钥加密方式安全地交换在稍后的共享密钥加密中要使用的密钥
      2. 确保交换的密钥是安全的前提下,使用共享密钥加密方式进行通信
  • 证明公开密钥正确性的证书

    防止公开密钥在传输途中,被攻击者替换。

为了解决上述问题,可以使用由数字证书认证机构和其相关机关颁发的公开密钥证书。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 yanglau0527@gmail.com

文章标题:图解HTTP-7-确保Web安全的HTTPS

文章字数:1k

本文作者:Cynaith

发布时间:2020-05-26, 01:00:12

最后更新:2020-05-26, 01:02:27

原始链接:https://cynaith.github.io/2020/05/26/%E5%9B%BE%E8%A7%A3HTTP-%E7%A1%AE%E4%BF%9DWeb%E5%AE%89%E5%85%A8%E7%9A%84HTTPS/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏