第一步,制做自签名的证书
1.最简单快捷的方法,打开Terminal,使用openssl(Mac OS X自带)生成私钥和自签名的x509证书。
openssl req -x509 -out public_key.der -outform der -new -newkey rsa:1024 -keyout private_key.pem -days 3650
按照命令行的提示输入内容就好了。
几个说明:
public_key.der是输出的自签名的x509证书,即咱们要用的。
private_key.pem是输出的私钥,用来解密的,请妥善保管。
rsa:1024这里的1024是密钥长度,1024是比较安全的,若是须要更安全的话,能够用2048,可是加解密代价也会增长。
-days:证书过时时间,必定要加上这个参数,默认的证书过时时间是30天,通常咱们不但愿证书这么短就过时,因此写上比较合适的天数,例如这里的3650(10年)。
事实上,这一行命令包含了好几个步骤(我研究下面这些步骤的缘由是我手头已经由一个private_key.pem私钥了,想直接用这个来生成x509证书,也就是用到了下面的2-3)
1)建立私钥
openssl genrsa -out private_key.pem 1024
2)建立证书请求(按照提示输入信息)
openssl req -new -out cert.csr -key private_key.pem
3)自签署根证书
openssl x509 -req -in cert.csr -out public_key.der -outform der -signkey private_key.pem -days 3650
2.验证证书。把public_key.der拖到xcode中,若是文件没有问题的话,那么就能够直接在xcode中打开,看到证书的各类信息。
第二步,使用public_key.der来进行加密。
1.导入Security.framework。
2.把public_key.der放到mainBundle中(通常直接拖到Xcode就行啦)。
3.从public_key.der读取公钥。
4.加密。xcode