iOS客服端RSA加密

应服务器要求,需要对一些密码类的传输加密

一、配置好需要的五个证书文件(在终端实现)

1、创建私钥

openssl genrsa -out private_key.pem 1024 //1024代表RSA私钥生成的安全强度,也可以是512

2、生成证书请求

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

3、签名,找证书颁发机构签名,证明证书合法有效的,也可以自签名一个证书生成证书并签名,有效期10年,生成一个.crt的一个base64公钥文件 :

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

4、解成.der公钥二进制文件,放程序做加密用

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

5、生成.p12二进制私钥文件.pem 是base64的不能直接使用,必须导成.p12信息交换文件用来传递秘钥

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

iOS用到的是public_key.der和private_key.p12

导入到项目中不要直接拖拽进去,而是点击Xcode右下角的+号,选择add files to ""

新建项目后添加库:Security.framework


具体代码实现,待我研究下。。。未完待续

你可能感兴趣的:(iOS客服端RSA加密)