生成地址位置.png
這些天有很多同學(xué)來問.p12和 .der生成的方法,索性就寫一篇文章來解答,對稱加密/非對稱加密,這里說一下 兩者的區(qū)別:
(1)對稱加密加密與解密使用的是同樣的密鑰,所以速度快,但由于需要將密鑰在網(wǎng)絡(luò)傳輸,所以安全性不高。
(2) 非對稱加密使用了一對密鑰,公鑰與私鑰,所以安全性高,但加密與解密速度慢。
(3) 解決的辦法是將對稱加密的密鑰使用非對稱加密的公鑰進(jìn)行加密,然后發(fā)送出去,接收方使用私鑰進(jìn)行解密得到對稱加密的密鑰,然后雙方可以使用對稱加密來進(jìn)行溝通。
1.生成強度是 1024 的 RSA 私鑰
$ openssl genrsa -out private.pem 1024
執(zhí)行以代碼生成一個私鑰,Pem文件,其實Pem文件就是一般的文本格式;
2.創(chuàng)建證書請求
$ openssl req -new -key private.pem -out rsacert.csr
這里按提示填寫證書信息,這里配個圖吧:
證書填寫格式參照圖.png
這時候控制條要求輸入以下一些個人信息,那就跟著提示來吧~
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:beijing
Locality Name (eg, city) []:beijing
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Erma
Organizational Unit Name (eg, section) []:com
Common Name (e.g. server FQDN or YOUR name) []:Erma
Email Address []:hepeiyong@hwashine.cn
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
這時候生成了一個csr文件
3.生成證書并且簽名,有效期10年
$ openssl x509 -req -days 3650 -in rsacert.csr -signkey private.pem -out rsacert.crt
4.轉(zhuǎn)換格式-將 PEM 格式文件轉(zhuǎn)換成 DER 格式
$ openssl x509 -outform der -in rsacert.crt -out rsacert.der
5.導(dǎo)出P12文件
$ openssl pkcs12 -export -out p.p12 -inkey private.pem -in rsacert.crt
最后生成了兩個我們要用的文件,一個p12文件和一個der文件,der文件是公鑰,p12文件是私鑰。及 /.crt / .csr. / .pem
若使用安卓的文件請自行選擇O了; 到這里就完了,不謝...