[英]How to convert vector of DER encoded string to x509 in openSSL
SfNetworkLibrary::VerifyResult SfNetworkLibrary::VerifyX509CertChain(
const std::vector<std::string>& cert_chain,
const std::string& hostname,
const std::string& auth_type) {
在上面的代码中,Android Jelly bean 4.2.2用于服务器身份验证。 我需要将此DER编码的字符串 std::vector<std::string> cert_chain
为X509格式。
我想进行此转换,以便可以在openssl上设置此服务器证书。 SSL_CTX_use_certificate(ctx,x)
,其中ctx
是上下文, x
是x509证书。
我可以使用d2i_x509
将DER编码的字符串转换为x509吗?
但是在这种情况下,我们具有字符串vector<string>&cert_chain
,那么如何转换它呢?
我认为您想在cert_chain verctor中的所有证书上调用d2i_x509()。 在这种情况下,对于向量中的每个元素,将字符串转换为c字符串(char *),再说cstr。 使用string :: c_str()获取c字符串(例如cstr)。 现在调用d2i_x509(NULL,&cstr,strlen(cstr))。
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.