d2i_X509崩溃,证书格式错误?

时间:2015-09-17 11:05:05

标签: c linux openssl

我创建了一对密钥和一个自签名证书。 键被包围:

-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----

和证书:

-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----

我有这句话:

X509 *x509_certificate = d2i_X509(NULL, &cert_ptr, cert_size)

其中cert_ptr指向无符号字符的缓冲区。 所以,我通过hex编辑器将我的证书从ascii转换为Hex,只是将它放在缓冲区{0xAA,0xBB ...}中。 但似乎我做错了,因为d2i_X509崩溃了。

感谢

1 个答案:

答案 0 :(得分:1)

我在C#中遇到了同样的问题。

传递没有页眉和页脚行的证书并解码Base64中的内容有助于解析证书。