使用 openssl 命令行可以以人类可读的方式提取 .pem 证书中包含的所有信息;即:
openssl x509 -noout -in <MyCertificate>.pem -text
使用 openssl API 提取此信息的合适步骤是什么?
最佳答案
X509_print_ex
系列函数就是您的答案。
#include <openssl/x509.h>
#include <openssl/pem.h>
#include <openssl/bio.h>
int main(int argc, char **argv)
{
X509 *x509;
BIO *i = BIO_new(BIO_s_file());
BIO *o = BIO_new_fp(stdout,BIO_NOCLOSE);
if((argc < 2) ||
(BIO_read_filename(i, argv[1]) <= 0) ||
((x509 = PEM_read_bio_X509_AUX(i, NULL, NULL, NULL)) == NULL)) {
return -1;
}
X509_print_ex(o, x509, XN_FLAG_COMPAT, X509_FLAG_COMPAT);
}
关于c - 使用 openssl 以编程方式提取 pem 证书信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6509189/