RSA加密

作者: 葛新伟 | 来源:发表于2017-03-27 14:39 被阅读0次

最近在整理公司iOS项目,觉得目前的网络架构实在难修改,固决定重新构建一个网络请求库,因请求中经常用到加密,正好把加密篇给整理出来。

加密有很多种,项目中常用的有DES\3DES, RSA, AES, MD5。

本篇介绍RSA加密:

第一步:生成公钥私钥

生成环境是在mac系统下,使用openssl进行生成,首先打开终端,按下面这些步骤依次来做:

0.新建保存用文件夹,终端cd到对应文件夹下

1. 生成模长为1024bit的私钥文件private_key.pem

openssl genrsa -out private_key.pem 1024

2. 生成证书请求文件rsaCertReq.csr

openssl req -new -key private_key.pem -out rsaCerReq.csr

注意:这一步会提示输入国家、省份、mail等信息,可以根据实际情况填写,或者全部不用填写,直接全部敲回车.

3. 生成证书rsaCert.crt,并设置有效时间为10年

openssl x509 -req -days 3650 -in rsaCerReq.csr -signkey private_key.pem -out rsaCert.crt

4. 生成供iOS使用的公钥文件public_key.der

openssl x509 -outform der -in rsaCert.crt -out public_key.der

5. 生成供iOS使用的私钥文件private_key.p12

openssl pkcs12 -export -out private_key.p12 -inkey private_key.pem -in rsaCert.crt

注意:这一步会提示给私钥文件设置密码,直接输入想要设置密码即可,然后敲回车,然后再验证刚才设置的密码,再次输入密码,然后敲回车,完毕!

在解密时,private_key.p12文件需要和这里设置的密码配合使用,因此需要牢记此密码.

6. 生成供Java使用的公钥rsa_public_key.pem

openssl rsa -in private_key.pem -out rsa_public_key.pem -pubout

7. 生成供Java使用的私钥pkcs8_private_key.pem

openssl pkcs8 -topk8 -in private_key.pem -out pkcs8_private_key.pem -nocrypt

全部执行成功后,会生成如下文件,其中public_key.der和private_key.p12就是iOS需要用到的文件

第二步:将文件导入工程使用

1.新建工程, 并导入Security.framework框架

2.导入秘钥文件

3.上代码  https://github.com/gexinwei/RSA.git

相关文章

  • RSA加密方式

    RSA加密方式 获取RSA密钥 加密 解密 js库

  • C# RSA加解密和MD5加密

    1.RSA加密 2.RSA解密 3.RSA签名 RSA签名验签 4.MD5加密

  • RSA签名认证

    RSA可汗学院第一章 RSA加密 RSA加密原理第一章 RSA加密原理第二章 如何生成RSA公钥私钥 生成类似支付...

  • kotlin版本RSA非对称加密解密与分段加密解密

    基于kotlin语言的RSA非对称加密解密与分段加密解密 RSA非对称加密 RSA非对称加密的具体算法与来源我就不...

  • # RSA 公钥加密算法

    # RSA 公钥加密算法 # RSA 公钥加密算法

  • 命令

    文件编译 加密解密 1. 对称加密 DES AES Base64 2. 非对称加密 RSA RSA加密:公钥加密,...

  • Java加密

    MD5加密: RSA加密: CBC加密:

  • RSA加密算法详解

    什么是RSA算法? RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是197...

  • 项目加密 RSA+DES3加密方式

    rsa加密参考网址 rsa加密参考网址 des3加密支持中文加密 des加密参考网址 加密的方式为 先将数据进行D...

  • 常用的加密

    加密 RSA MD5 SHA-1 DES 3DES RSA RSA是一种非对称加密算法(公钥加密,私钥解密)。对极...

网友评论

      本文标题:RSA加密

      本文链接:https://www.haomeiwen.com/subject/ykrrottx.html