二、然後,通過jdk自帶的keytool工具建立秘鑰對
1.建立rsa金鑰對(公鑰和私鑰)並儲存在keystore檔案中:
keytool -genkeypair -alias "myalias" -keyalg rsa -keystore keystore.jks
2.從keystore檔案中匯出使用x509標準驗證的數字證書,包含公鑰:
keytool -exportcert -alias "myalias" -file cert.cer -keystore keystore.jks
注意:keytool沒有提供從keystore檔案匯出私鑰的工具,需要程式設計實現此功能。
從keystore檔案匯出的證書、金鑰都是der格式,可以使用openssl工具轉換成pem格式。
三、openssl
1.openssl是一套強大的工具集,包含各種加解密演算法,資訊摘要及簽名演算法,金鑰和證書管理等。
2.openssl使用的預設資料格式是pem格式,也支援der格式,可以進行互相轉換。
3.建立私鑰:
openssl genrsa -out private.key
若需要對私鑰加密,可以使用 -des -des3等引數。
4.金鑰管理,格式轉換
使用私鑰建立對應的公鑰
openssl rsa -in private.key -out public.pem -pubout
5.der/cer格式公鑰轉換為pem格式
openssl x509 -inform der -in mycer.cer -out mycer.pem
6.x509命令用於管理x509標準的證書
將der/cer格式證書轉換成pem格式
openssl x509 -in cert.cer -inform der -outform pem -out cert.pem
從證書中匯出公鑰
7.pkcs8,pkcs12命令用於管理私鑰的pkcs編譯碼
將金鑰使用pkcs8加密
openssl pkcs8 -in private.key -nocrypt -topk8 -out private.p8
將pkcs8金鑰解密
8.pem--der/cer(base64--der編碼的轉換)
openssl x509 -outform der -in mycer.pem -out mycer.der
9.
pem--p7b(pem--pkcs#7)
openssl crl2pkcs7 -nocrl -certfile mycer.cer -out mycer.p7b
10.
pem--pfx(pem--pkcs#12)
openssl pkcs12 -export -out mycer.pfx -inkey privatekey.key -in mycer.crt -certfile mycer.crt
11.
pem--p12(pem--pkcs#12)
openssl pkcs12 -export -out cert.p12 -in cert.pem -inkey key.pem
12.p7b--pem(pkcs#7--pem)
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
13.
p7b--pfx(pkcs#7--pkcs#12)
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
openssl pkcs12 -export -in certificate.cer -inkey privatekey.key -out certificate.pfx -certfile cacert.cer
14.
pfx/p12--pem(pkcs#12--pem)
openssl pkcs12 -in certificate.pfx -out certificate.cer
如無需加密pem中私鑰,可以新增選項-nodes;
如無需匯出私鑰,可以新增選項-nokeys;
15.pem base64--x.509文字格式
openssl x509 -in key.pem -text -out cert.pem
16.
pfx檔案中提取私鑰(.key)
openssl pkcs12 -in mycert.pfx -nocerts -nodes -out mycert.key
17.
pem--spc
openssl crl2pkcs7 -nocrl -certfile venus.pem -outform der -out venus.spc
18.
pem--pvk(openssl 1.x開始支援)
openssl rsa -in mycert.pem -outform pvk -pvk-strong -out mypvk.pvk
19.pem--pvk
pvk轉換器
後通過以下命令完成)
pvk -in ca.key -out ca.pvk -nocrypt -topvk
linux下OpenSSL的RSA金鑰生成
openssl version openssl 1.0.0e.tar.gz 安裝 2 在資料夾下解壓縮,命令 tar xzf openssl openssl 1.0.0e.tar.gz 得到openssl openssl 1.0.0e資料夾 3 進入解壓的目錄 cd openssl 1.0.0e 4...
生成RSA金鑰對
著名的rsa演算法,它通常是先生成一對rsa 金鑰,其中之一是保密金鑰,由使用者儲存 另乙個為公開金鑰,可對外公開,甚至可在網路伺服器中註冊。為提高保密強度,rsa金鑰至少為500位長,一般推薦使用1024位。這就使加密的計算量很大。rsa加密演算法的用處非常廣,比如支付寶的公開api與商戶對接使用...
OpenSSL生成RSA公鑰和金鑰
2.開啟cmd,執行 c openssl win32 bin openssl.exe 進入openssl 3.先生成私鑰,輸入命令 openssl genrsa out private key.pem 2048 按回車鍵,輸出 generating rsa private key,2048 bit ...