繁体   English   中英

如何在OpenSSL中将DER编码的字符串的向量转换为x509

[英]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_chainX509格式。

我想进行此转换,以便可以在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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM