【问题标题】:Contents of OCSP packets?OCSP 数据包的内容?
【发布时间】:2024-01-20 22:59:01
【问题描述】:

据我所知,网络浏览器使用 OCSP 数据包来检查传入证书(来自网络服务器)是否仍然有效或已被撤销。

我对此有一些疑问:

1- 我对 OCSP 的看法是否正确?

2- 浏览器是否为每个传入的证书发送 OCSP 请求?

3- 这些请求的目的地在哪里?根 CA?

好吧,我使用 Wireshark 监控我的网络适配器上的数据传输,并收到以下请求:

点击放大

[]1

嗯,以上观察为以上问题增加了 3 个问题:

4- 我对目标 IP 做了一个 whois IP,结果显示它是 a23-51-123-27.deploy.static.akamaitechnologies.com 。真的是根 CA 吗?

5- 此请求以明文形式发送,未使用 SSL 协议加密!为什么?不能简单地用 MITM 攻击吗?

6- 此数据包仅包含 issuerNameHashissuerKeyHashserialNumber!他们真的够了吗?!为什么要发送散列值?

【问题讨论】:

    标签: ssl https certificate ssl-certificate digital-signature


    【解决方案1】:

    有很多问题需要回答。

    1. Web 浏览器仅在浏览器设置中设置(这样做)并且仅当证书中有指向 OCSP 的 URL 以进行验证时,才会检查 OCSP 响应者的证书吊销信息。
    2. 首先建立一个证书链。链中的每个证书(不包括在您的证书存储中受信任的根:))将由 OCSP 验证(如果满足“1”中的条件)。
    3. 不是每个证书都使用 RootCA。链中的每个证书都可以包含 OCSP 服务器的 url。 OCSP 服务器证书必须由其工作的 CA 颁发,因此每个 CA 将拥有(可能拥有,它不是强制性服务)其专用的 OCSP 服务器。 OCSP 请求将根据正在验证的证书中的 url 转到相应的 OCSP 服务器。
    4. 我不知道那个网址是什么。但是根据转储,有一个 OCSP 服务器在 IP 23.51.123.27 上运行。
    5. 因为这是 OCSP 的工作方式:)。请求中只有公共信息,因此不需要加密。响应由颁发经过验证的证书的同一 CA 颁发的 OCSP 服务器签名。客户端可以很容易地验证响应没有被篡改(签名检查),并且它是由有效的 OCSP 响应者发出的 - 再次没有加密。阅读RFC 6960 了解更多信息。
    6. 是的,信息足够了。证书由序列号和颁发者标识。 OCSP 响应者为颁发其证书的 CA 提供服务,因此 OCSP 服务器可以验证请求是否有效(同一颁发者)。 OCSP 服务器可以(但只是对 OCSP 协议的扩展,并未广泛使用 AFAIK)发回经过验证的证书的指纹。这是 OCSP 服务器知道证书的确认。

    【讨论】: