【问题标题】:Can certificates verify dumped https traffic?证书可以验证转储的 https 流量吗?
【发布时间】:2023-01-04 03:54:20
【问题描述】:

假设,例如,我向https://example.com 发出了一个 HTTP 请求并转储了以下数据

  • 根 CA 之前用于在建立连接时验证服务器的所有证书
  • 双向所有原始 TCP 流量
  • 双向所有未加密/解密的 HTTP 流量
  • (可选)客户端生成的附加数据

然后我想证明我确实与那些 CA 信任的 https://example.com 建立了这样的连接,并且流量在客户端不是假的或修改的,假设该网站是“可信的”,例如它已安全配置且未被黑客入侵。

这可能吗?

如果可能,客户端还需要转储哪些数据以及如何进行验证?

【问题讨论】:

    标签: https ssl-certificate


    【解决方案1】:

    有足够的“客户端生成的附加数据”,是的,但实际答案是“否”。

    现代 TLS 中使用的密码套件都使用称为“Perfect Forward Secrecy”的功能。要点是,除了用于服务器(和可选的客户端)身份的稳定的非对称密钥对之外,客户端和服务器都会生成一个随机的椭圆曲线 Diffie-Hellman(或经典的 Diffie-Hellman)密钥对,执行(EC )DH 密钥协商会话主密钥,然后双方立即忘记该协商的临时私钥。如果没有这些 (EC)DH 私钥中的任何一个,您将无法重新导出完整性密钥,因此您无法证明会话。

    当然,如果你可以重新导出完整性密钥,然后您就可以在之后伪造会话。所以我想,无论哪种方式,最终答案都是“否”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-07
      • 2018-03-06
      • 2011-11-16
      • 1970-01-01
      • 2020-12-21
      • 2014-09-29
      • 1970-01-01
      相关资源
      最近更新 更多