为什么大网站不使用ocsp装订?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么大网站不使用ocsp装订?相关的知识,希望对你有一定的参考价值。

我最近学到了一些关于ocsp的东西。我通过命令检查网站的ocsp装订,如:

$openssl s_client -connect www.stackoverflow.com:443 -status -servername www.stackoverflow.com

我发现自己的网站和stackoverflow和其他一些小网站有ocsp设置。他们在命令响应中有OCSP Response Data字段。

但是当我检查一些大型网站如google.com,github.com,facebook.com时,他们没有这样的领域。我得到了OCSP response: no response sent

那他们为什么不使用呢?

答案

要保护您的用户,作为Web服务器,您必须使用OCSP must staple。但即使在这种情况下,您也需要考虑所提供的OCSP响应通常在多天内有效,因此攻击者可以在证书被撤销之前获得服务器证书的OCSP有效状态,并将其作为OCSP装订在针对Web客户端的MitM攻击期间的状态(当然,攻击者必须与攻击证书并且证书已被撤销的攻击者相同)。因此,不支持OCSP装订且需要OCSP的浏览器将受到保护。支持OCSP装订的浏览器不会。这是OCSP装订不是最终选择的原因之一。在某些情况下,它是一种不太安全的方法来避免安全漏洞,以及其他一些无用的情况。当然,即使在互联网上获得更多信任并不是一个糟糕的尝试。

因此,像谷歌这样的大公司提供其他方法来保护他们的客户和用户使用他们的浏览器:与其他浏览器相比,他们希望为用户提供更安全的体验,因为他们的目标是吸引更多用户。为此,Google Chrome实施了专有的CRLSets机制。

同样的公司和其他公司也希望促进人们获得(重新)互联网信任的其他方式。例如,一些公司跟随谷歌推广Certificate Transparency机制。因此,从政治上讲,在他们的网站上实施OCSP装订并为互联网建立另一个信任机制是一个坏主意。

我读过有关证书撤销的最佳论文以及保护用户的方法是:https://arstechnica.com/information-technology/2017/07/https-certificate-revocation-is-broken-and-its-time-for-some-new-tools/

另一答案

我的回答是:可能是因为在响应中节省了更多的字节。

Alexandres的答案(特别加粗的文字)对于google.com可能是正确的,但不适用于facebook。

OCSP装订响应将出现在每个TLS连接中,这需要很多字节。如果没有OCSP主要存在作为回应,为什么会发生?!客户端向原始服务器发送OCSP验证请求并缓存响应数天。对于google和facebook等热门网站,用户每天会多次查看网页,通常会在客户端缓存OCSP响应,并且不需要OCSP请求(例如,只有2%的客户需要实际的OCSP请求)。

因此,对于这些受欢迎的网站,删除OCSP装订(并为98%的请求节省了一百个字节)是比2%的请求使网站更快的更好的选择。

以上是关于为什么大网站不使用ocsp装订?的主要内容,如果未能解决你的问题,请参考以下文章

OCSP

https Azure 网站在通过 Firefox 访问时返回 SEC_ERROR_OCSP_INVALID_SIGNING_CERT [关闭]

Android Studio:禁用装订线

什么是CDN?CDN在OCSP中的应用?

OCSP 阻止本地服务器的 SSL

密码学系列之:在线证书状态协议OCSP详解