我知道這可能是一個不好的問題,但我很困惑。我有一個 tls 證書和一個 tls 密鑰檔案 tls.crt 和 tls.key。我想我應該將它們轉換成公鑰和私鑰,相對地,以便使用openssl。
side note: Am I approaching this wrong? Is there some TLS application to encrypt/decrypt?
要轉換公鑰,我使用
$ openssl x509 -pubkey tls.crt -noout > pubkey
這創建了一個公鑰,我可以通過這樣做來加密訊息檔案
$ opensssl rsautl -encrypt -inkey pubkey -pubin -in <message file> -out <encrypted output>
我已成功加密檔案,但現在我不知道如何解密它。我不知道如何將我的私鑰 (tls.key) 轉換為 ssl 私鑰。這讓我很難過。我不應該做一些 tls 加密/解密嗎?如果沒有,并且我應該使用 openssl,我應該如何將 tls.key 轉換為可用于 openssl rsautl -decrypt 的私鑰?
uj5u.com熱心網友回復:
tl; dr:密鑰檔案是您想要的密鑰檔案。不需要轉換。
這里的訣竅在于以下問題:“什么是證書?” 答案是它是帶有安全私鑰的簽名公鑰。它(通常)由 CA(“證書頒發機構”)簽名。
基本流程是:
- 想要證書的物體創建一個私鑰/公鑰對。
- 物體將公鑰和有關物體的一些資訊發送給 CA。
- CA 對物體執行“某種級別”的驗證,驗證其身份。通常,這只是請求者擁有證書將用于的網站的某種程度的證明。
- CA 獲取提供的公鑰和提供的其他資訊,使用他們的私鑰為該資料生成簽名,然后可以通過使用 CA 的公鑰解密簽名來驗證該簽名。那將成為您的證書。
因此,您從證書中獲取了自己的公鑰。私鑰 (tls.key) 應該是您在第一步中創建的密鑰檔案 - 只需在加密資料上使用它即可。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/498213.html
