如果可以不用加密,我更喜欢不加密。
嘿嘿嘿,找静态库吧,找demo吧?先来一发:
https://github.com/myafer/OpenSSLApplication
1. Xcode配置 openssl 篇
(1). 新建一个工程
(2).导入openssl 这些选项一定要选对。有人勾选的是 Create folder refrences就变成蓝色的文件夹了,这里就不解释了,自己百度,Google 去。

(3). 运行一下,会发现是会报错的。报的错误是头文件找不到,这是因为我们还没有配置openssl的library文件路径。那么我们接下来配置路径,先Show In Finder一下 看看我们的openssl在哪

然后重点来了 ,我们把这个include拖到这个框里面,路径就配置好了,运行就不会报错了。

好了,我们的环境配置就到此结束了。
但是,现在有个重要的问题来了,我们怎么使用它
2. Openssl 的使用
(1). 来让我们引入4个 我精心剽窃了一晚上写的两个CRSA文件以及所依赖的Base64转码文件

(2). 运行一下看,又报错了,又是文件找不到。这可难死宝宝了

别着急,我们就像刚才那样 找到这个地方

然后我们把它拖进去

好了,我们现在就能使用RSA加密了,我们先自己生成一个密钥对来做下试验,demo里面已经有生成好的。

这就是RSA的简单使用,要想了解更多,敬请期待下一期。呵呵,忘记贴结果了,我可不是忽悠人的


1. 提高篇 iOS RSA加密提升篇(分段加密)
网友评论
为什么我用我们公司的公钥和私钥在你的demo上可以加解密 但是我在你的demo上加密 给后台解密就不行了 后台说可能填充方式和后台不一样 能告诉我这个是啥问题吗 谢谢拜托了
NSString *str2 = [cc encryptByRsa:str withKeyType:(KeyTypePrivate)];
NSLog(@"解密str is %@",str2); 】这样写就崩,崩的原因是【Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** NSAllocateMemoryPages(18446744073709551615) failed'
】,可以麻烦您帮我看一下吗
NSMutableString *mutableResultStr = @"".mutableCopy;
for (NSInteger i = 0; i < ceilf(encryptResult.length / 172); i ++) {
NSString *subStr = [encryptResult substringWithRange:NSMakeRange(i * 172, 172)];
NSLog(@"解密第%ld段 === %@ length = %ld", i, subStr, subStr.length);
[mutableResultStr appendString:[cc decryptByRsa:subStr withKeyType:(KeyTypePrivate)]];
}
XgfB7rkxFjjm9XJHCxNvjUjajIrP0noaLiMaNJjBH2ku+TmNoYip9AKcY1x+5+M/
mAdzW2o65xjt683fKK37ALez2uX1ZjuabRqJHc/SkMXG/B4X2jAzDBmEWEFOwmCp
BUhtIMNIV6JxhErkR3lOqw0/qaVQPu5nGDw7M0QJ0yK6TytK80M19cxFKB3cY0Fj
AclTaFoeyorX4E1+8KVYZMnilD536rhZL/DV+OUsyTdXFHlh6yRjIlanky89D7aB
ksWtpGHr/LUIreSLthcoeT/007PlFX0e9glFf9hmPibgcm3iZ20Vg0P4nrN/Vl96
SwIDAQAB 楼主可以帮忙试一下吗