gpt4 book ai didi

openssl - 在 OpenSSL 中验证证书的域

转载 作者:太空宇宙 更新时间:2023-11-03 12:45:56 30 4
gpt4 key购买 nike

我需要使用 C-land OpenSSL 验证 X509 证书的域。

我的理解是库不会为我做这件事,我必须大致实现以下算法:

  1. 如果存在 subjectAlternativeName 扩展的 dnsName 字段,请将 name 设置为该值。
  2. 否则,将name设置为主题的CN字段。
  3. name 与请求的主机名进行比较,允许每个星号匹配 [A-Za-z0-9_]+,但不匹配“点”(.)。

在我看来,应该有大量代码可以用来执行此操作,但我还没有找到任何代码。

谁能找到这方面的例子?或者,对我的算法进行完整性检查?

编辑:这就是我想出的:https://gist.github.com/2821083 . OpenSSL 将其留给调用代码似乎真的很奇怪。

最佳答案

您非常准确 - 尽管要注意主题替代名称、原始 IP 地址和 FQDN。你可能想偷

BOOL SSL_X509_getIDs(apr_pool_t *p, X509 *x509, apr_array_header_t **ids)

和来自http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/ssl/ssl_util_ssl.c的相关 friend 以及所有选项的 ssl_engine_init.c 中的被调用者(顺便说一下,服务器端)。

当您对 openssl 回调执行操作时 - 如果您尚未在 CTX 中提供日期和时间以及链,还应考虑。

数据。

关于openssl - 在 OpenSSL 中验证证书的域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10788496/

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