参考http://blog.iamzsx.me/show.html?id=155002
针对于RSA加密,iOS端没有专门的支持RSA加密的接口(API),所以一般有俩种解决RSA加密的方案
一,通过制作自签名的x509证书,再调用x509的相关API进行加密
二,通过制作通用的pem的密钥结合openssl静态库进行RSA加密
在上一篇文章RSA加密(1.0)我们已经提到制作证书的过程,其中private_key.pem是私钥,public_key.der是用于iOS的公钥
下面讲一下x509加密
上篇文章我们制作了适用于iOS的公钥public_key.der与私钥private_key.p12,此处会用到这俩个密钥,创建一个工程,将俩个密钥引入到工程中。并导入Security.framework
#import <Foundation/Foundation.h>
#import <Security/Security.h>
@interface RSA : NSObject{
SecKeyRef publicKey;
SecCertificateRef certificate;
SecPolicyRef policy;
SecTrustRef trust;
size_t maxPlainLen;
}
- (NSData *)encryptWithData:(NSData *)content;
- (NSData *)encryptWithSting:(NSString *)content;
@end
#import "RSA.h"