这几乎是关于该问题的其他信息的请求:
OpenSSL certificate revocation check in client program using OCSP stapling

我想知道OpenSSL如何实际处理OCSP装订响应。问题是:
1. OpenSSL是否检查响应的签名,发行者密钥/名称哈希?
2.该响应是否包括整个证书链的OCSP响应?如果是这样,是否有办法知道其中一个验证已失败?
3.总结一下,我是否可以仅依靠响应的“证书状态:良好”字段? :)

我担心的是,黑客可能会使用已撤销(被盗)的证书来制作https服务器,但在握手过程中,它会为由同一CA颁发者认证的随机网站提供有效的订正OCSP响应。 OpenSSL可以处理这种情况吗?

OCSP响应示例可在此处找到
https://www.feistyduck.com/library/openssl-cookbook/online/ch-testing-with-openssl.html#testing-ocsp-stapling

最佳答案

SSL_set_tlsext_status_typeDocumentation表示回调必须确定OCSP响应是否可接受。

这意味着OpenSSL库本身不会对OCSP响应进行任何验证。但这是开源的,所以我们可以看一下。
OpenSSL source of s3_clnt.c on GitHub

该库将验证SSL握手中的消息类型正确,长度正确且响应完整,但完全不检查内容。

如果使用SSL_CTX_set_tlsext_status_cb设置了回调,则将调用该回调,并且回调的返回码是用于继续或终止SSL握手的唯一方法。

响应数据将是OCSP响应的DER编码二进制字节。 OpenSSL提供了解析此值并检查其内容的函数。

关于ssl - 使用OCSP装订2的客户端程序中的OpenSSL证书吊销检查,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36585021/

10-14 15:51