c++ - 如果字符串是证书,如何检查 openssl c++,如果是,如果该字符串是根证书

标签 c++ validation openssl ssl-certificate

我正在开发 gcc 环境。我需要实现两个功能:

1) 检查给定字符串是否为证书的函数。

2) 检查给定字符串是否为根证书的函数。

我想使用 openssl。

我该怎么做?

最佳答案

  1. 考虑函数 d2i_X509 and related .
  2. 从技术上讲,根证书是应用程序信任的任何证书,无需进一步验证。因此,由您决定哪些证书是根证书。按照惯例,根证书的颁发者和主题名称相同。您可以使用

    从 X509 证书中获取颁发者和主题名称

    X509_NAME *X509_get_subject_name(X509 *a);
    X509_NAME *X509_get_issuer_name(X509 *a);

并将它们与

int     X509_NAME_cmp(const X509_NAME *a, const X509_NAME *b);  

方法。

关于c++ - 如果字符串是证书,如何检查 openssl c++,如果是,如果该字符串是根证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4533898/

相关文章:

javascript - "$(...).validate is not a function"即使我直接将 jquery.validate.js 代码放在 head 中

css - (X)HTML+CSS 验证警告

ssl - 使用自签名证书的 Lighttpd + https 安装

c++ - 应用程序停止后 Qt 关闭托盘图标

c++ - 类构造函数上的调用错误没有匹配函数

wpf - 结合文本框的 ValidationRule 和值转换器

ssl - 为什么我会收到验证错误 :unable to get local issuer certificate when I run openssl ocsp?

apache - 来自 Apache/OpenSSL 的 SSL 间歇性 Firefox 和 Python 问题

c++ - 如何在 Xcode 中构建没有 calloc 转换结果的程序?

c++ - 使用 std::function 作为参数的可变参数模板