第一步,製做自簽名的證書
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