首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >X.509证书转换为SecCertificateRef

X.509证书转换为SecCertificateRef
EN

Stack Overflow用户
提问于 2013-11-22 12:08:35
回答 2查看 767关注 0票数 1

我正在使用openSSL连接到服务器。

在我获得X509格式的证书/链之后,我希望使用苹果的安全框架来验证证书。

为此,我需要将X.509结构转换为SecCertificateRef。

下面失败..。

代码语言:javascript
复制
X509 *x509cert = ..;
SecCertificateRef certificateRef = SecCertificateCreateWithData(NULL, X509Cert);

SecCertificateCreateWithData需要CFDataRef (DER编码X.509证书)格式的数据。

有人有这方面的样本代码吗?

EN

回答 2

Stack Overflow用户

发布于 2014-01-23 02:38:58

您的证书的文件扩展名是什么?您可能需要将其转换为DER格式。

代码语言:javascript
复制
openssl x509 -outform der -in certificate.pem -out certificate.der
票数 1
EN

Stack Overflow用户

发布于 2020-12-15 14:32:50

代码语言:javascript
复制
X509 *x = ...
BIO *x_bio = BIO_new(BIO_s_mem());
i2d_X509_bio(x_bio, x);
BIO_flush(x_bio);
char *x509Pointer;
long x509Length = BIO_get_mem_data(x_bio, &x509Pointer);
NSData *certData = [NSData dataWithBytes:x509Pointer length:x509Length];
SecCertificateRef cert = SecCertificateCreateWithData(NULL, (__bridge CFDataRef)certData);
BIO_free_all(x_bio);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20144562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档