gpt4 book ai didi

c - 如何在客户端处理传统 OCSP 和 OCSP 装订

转载 作者:行者123 更新时间:2023-12-03 06:59:46 26 4
gpt4 key购买 nike

目前,我有一个实现,可以在 verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx) 函数中为每个中间实体和最终实体证书发送 OCSP 请求。 verify_callback 函数是使用 SSL_CTX_set_verify() 函数设置的。

现在,我想将 OCSP 装订添加到我的实现中。我看到帖子OpenSSL certificate revocation check in client program using OCSP stapling关于如何包含 OCSP 装订。

添加上述 OCSP 回调的问题是,verify_callback() 在 OCSP Stapling 回调函数之前首先被调用。

我的问题是,如果服务器没有 OCSP 装订响应,那么客户端将自行发送 OCSP 请求,如何才能同时拥有这两者。

在调用 verify_callback() 函数之前,有没有办法检查是否支持 OCSP 装订?

最佳答案

我不确定这是否有意义。 OCSP 装订的要点是将响应附加到初始 TLS 握手中,参见。 Wikipedia 。因此,必须在评估其内容之前确定 TLS 握手的有效性。因此,OpenSSL 首先触发 verify_callback() 来验证握手本身,然后(如果发现握手有效)才触发 OCSP 回调函数,让您验证握手中包含的附加数据.

否则,如果 TLS 握手失败,为什么您还需要提交任何传统的 OCSP 请求?

如果您坚持手动向第三方提交 OCSP 请求,则需要在 TLS 握手完成后(可能在您通过该连接发送任何进一步数据或处理您收到的任何数据之前)完成此操作。或者在您尝试连接到远程服务器之前(当然,前提是您提前知道证书)——此工作流程不再需要使用 OCSP 装订。

关于c - 如何在客户端处理传统 OCSP 和 OCSP 装订,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41267460/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com