我想用C库从pkcs12文件中提取x509证书和私钥。我找到了很多.net实用程序来执行此操作,但没有找到任何C库。我的代码将在WinPE环境中运行,因此.net将无法工作。
最佳答案
您可以使用OpenSSL来实现这一点。函数d2i_PKCS12_fp()
可用于将PKCS#12文件加载到PKCS12
对象中,函数PKCS12_parse()
可用于解析结果对象以提取证书和私钥:
PKCS12 *d2i_PKCS12_fp(FILE *fp, PKCS12 **p12);
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509) **ca);
有关详细信息,请参见
PKCS12_parse()
man page。关于c - 从pkcs12文件中提取x509证书和私钥,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3278354/