[Mac/Linux] 使用 openssl 指令,將有密碼保護的私鑰 PEM 解密
最近拿到一把 PEM 格式的私鑰 (private key),長的像下面這樣,
注意它寫的是 ENCRYPTED PRIVATE KEY:
-----BEGIN ENCRYPTED PRIVATE KEY----- MIIFHzBJBgkqhkiG9w0BBQ0wPDAbBgkqhkiG9w0BBQwwDgQIoylZ3Iz8++4CAggA ...... -----END ENCRYPTED PRIVATE KEY-----
這種私鑰是有被密碼保護的,要拿給其他程式使用的話,
通常得要解密才行 (像是給 MySQL 使用)…
那要怎麼解密呢?
找了一下,原來用 openssl 一個很簡單的指令就行了~
下面的例子裡 server_encrypted.key 是被密碼保護的私鑰,
指定解密後的私鑰名稱是 server.key,
執行過程需要輸入原本私鑰的密碼:
$ openssl rsa -in server_encrypted.key -out server.key Enter pass phrase for server_encrypted.key: writing RSA key
解完的私鑰 (本例中的 server.key) 內容就會像這樣了,
變成是 RSA PRIVATE KEY,原本的 ENCRYPTED 字眼也不見囉:
-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAuINVetZpViaZHPLEREHI25n7KwNwQ7pf/kGWgAMD9mbDieKD ...... -----END RSA PRIVATE KEY-----
這個解密後的私鑰就可以拿去給其他程式使用啦,
不過因為沒有了密碼保護,要更注意它的安全囉~
參考資料:encryption – Decrypt PEM containing key and certificate – Super User
(本頁面已被瀏覽過 642 次)