惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
F
Fortinet All Blogs
爱范儿
爱范儿
博客园 - Franky
MyScale Blog
MyScale Blog
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
B
Blog
P
Proofpoint News Feed
IT之家
IT之家
宝玉的分享
宝玉的分享
D
DataBreaches.Net
S
SegmentFault 最新的问题
Microsoft Azure Blog
Microsoft Azure Blog
GbyAI
GbyAI
M
MIT News - Artificial intelligence
L
LangChain Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
月光博客
月光博客
雷峰网
雷峰网
Stack Overflow Blog
Stack Overflow Blog
量子位
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

博客园 - 坤坤

一步步教学在 Windows 下面安装 pytorch3d 来部署 xuniren 这个项目 遇到了个问题 python 学习笔记 nginx 相关配置 复制id_rsa命令 macOS Sierra 如何卸载.net core 版本 REMOTE HOST IDENTIFICATION HAS CHANGED! 认识 SSH 密钥对 WebViewJavascriptBridge的使用说明 - 坤坤 - 博客园 终于把eShopOnContainer部署成功了。 js 正则表达式验证网站域名 Windows 版本的iTunes 修改iPhone的备份路径 - 坤坤 EPSON LQ610K 设置税控盘打印发票的格式 Bootstrap 3 Datepicker 使用过程 拜访优达学城上海总部 ipad pro 文章 探寻阿里云服务器迈入2.0时代的技术要点 体验阿里云SSD云盘+ECS(I/O优化)的性能 使用FIR.im发布自己的移动端APP
在iOS中使用OpenSSL的Public Key 进行加密
坤坤 · 2015-06-19 · via 博客园 - 坤坤

这几天一直潜心于iOS开发,刚好把遇到的问题都记录一下。这次遇到的问题就是如果根据得到的Public Key在iOS 客户端对用户名和密码进行加密。

Public Key如下:

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCp0wHYbg/NOPO3nzMD3dndwS0MccuMeXCHgVlGOoYyFwLdS24Im2e7YyhB0wrUsyYf0/nhzCzBK8ZC9eCWqd0aHbdgOQT6CuFQBMjbyGYvlVYU2ZP7kG9Ft6YV6oc9ambuO7nPZh+bvXH0zDKfi02prknrScAKC0XhadTHT3Al0QIDAQAB
-----END PUBLIC KEY-----

然后就在Google里搜索在iOS 进行RSA 加密,搜到了几篇文章如下:

iOS 上的 RSA 加密方法

iOS 上的 RSA 加密方法

仔细看了一下这两篇文章,发现他们都是从文件中读取Public_Key进行加密,而我遇到的场景是Public_Key是给定的,而不是生成自己的Public_Key进行加密,所以这两篇文章对我的帮助不大。

然后在stackoverflow上找到这个问题,链接为:Encryption with RSA public key on iOS,@ideawu 已经将这个加密算法公开出来,然后根据自己的尝试发现这个方法是可行的。下面就是直接调用他写好的方法进行加密,与服务器端进行解密就完成了加密和解密的过程啦。

NSString *encryptUserName = [RSA encryptString:userName publicKey:pubkey];
NSString *encryptPassword = [RSA encryptString:password publicKey:pubkey];

最后如果访问GitHub有问题的话,我把RSA文件上传到自己的空间方便大家下载。

RSA文件