我想訪問服務器的REST端點,例如xyz.com。他們提供了PEM格式的證書,我應該在連接到他們的終端時將其包含在我的應用程序中。將證書導入到Spring中的問題
我的應用程序是在Spring Framework上編寫的,我需要將PEM轉換爲P12格式,因爲Spring將不接受PEM。這是我怎麼轉換:的
openssl pkcs12 -export -out certificate.p12 -inkey private.pem -in server_cert.pem
其中,
certificate.p12 =結果P12文件
private.pem =私鑰
server_cert.pem =證書文件服務器
我得到的錯誤是:
沒有證書與私鑰匹配。
現在我的問題:
- 誰的私有密鑰應該被用來產生從PEM文件P12文件?
- 如果客戶端的私鑰用於生成p12,它怎麼可能與證書匹配(錯誤信息變得明顯)?
- 爲什麼我需要我的私鑰與服務器通信?根據我的理解,在SSL會話期間,客戶端的私鑰不會出現在圖片中。或者我的理解錯了?
- 如果使用服務器的私鑰生成p12,他們爲什麼要共享它?
我是新手,因此歡迎任何鏈接/建議閱讀/資源/答案。
你從哪裏得到你的'server_cert.pem'?當您獲得用於連接服務器的私鑰時,您還應該獲得簽名證書。從這個文件的名字看來,你使用的是server_cert.pem,我假設它只包含服務器的證書,而不是你的證書。您應該使用已簽名供您使用的證書進行操作。 –
服務器開發人員將其提供給將要呼叫其端點的所有客戶端。 –
一般來說,大部分時間'p12'都會發給客戶。你有沒有試過問他們一個p12?當你雙擊pem時,系統證書查看器打開。葉證書說什麼?查找SubjectDN,IssuerDN,SubjectAltName等屬性。這應該給你一個想法,如果你有正確的證書。 –