应服务器要求,需要对一些密码类的传输加密
一、配置好需要的五个证书文件(在终端实现)
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
具体代码实现,待我研究下。。。未完待续
网友评论