【发布时间】:2015-02-15 20:42:07
【问题描述】:
我正在开发一个与远程 API 通信的 iOS 应用程序。此 API 要求我使用存储在 .cer 文件中的公钥加密数据(由 Windows 机器上的 OpenSSL 生成)。我已经在我的项目中包含了.cer 文件,并且我正在使用以下代码来获取证书参考(至少我认为我是这样做的)。
NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSData *iosTrustedCertDerData = [NSData dataWithContentsOfFile:[bundle pathForResource:@"CertName" ofType:@"cer"]];
SecCertificateRef certificate = SecCertificateCreateWithData(NULL, (__bridge CFDataRef) iosTrustedCertDerData);
在那之后我几乎陷入了困境。我已经在网上搜索了一段时间,看到各种对 openssl.h 的引用。但是,openssl 似乎只适用于 Mac,而不适用于 iOS。
我不禁想知道为什么我找不到任何在您的 iOS 应用程序中使用证书的示例。每次我在 iOS 应用中搜索证书时,我都会得到解释配置文件等的结果。这不是我想要的。
我找到了 RNCryptor,但据我所知,它是一个用于加密/解密的库,但不支持从证书中读取密钥。
我正在寻找有关如何使用存储在证书中的公钥的库(或代码示例),该证书包含在应用程序中。 有些东西告诉我我走错了路。
当我能够从证书文件中获取密钥时,加密不会成为问题......希望如此。
任何帮助将不胜感激!
【问题讨论】:
标签: ios encryption certificate key public