密鑰,金鑰組,公開金鑰,pfx,jks和https的幾個概念

來源:互聯網
上載者:User

密鑰:
我理解是公開金鑰+私密金鑰的統稱。

金鑰組:
公開金鑰(認證)和私密金鑰成對存在。
通訊雙方各持有自己的私密金鑰和對方的公開金鑰。自己的私密金鑰需密切保護,而公開金鑰是公開給對方的。在windows下,單獨存在的公開金鑰一般是尾碼為.cer的檔案
A用自己的私密金鑰對資料加密,發給B,B用A提供的公開金鑰解密。同理B用自己的私密金鑰對資料加密,發送給A後,A用B的公開金鑰解開。
公開金鑰的兩個用途:
1。驗證對方身份:防止其他人假冒對方發送資料給你。
2。解密。
私密金鑰的兩個用途:
1。表明自己身份:除非第三方有你私密金鑰,否則無法假冒你發送資料資料給對方。
2。加密。

jks(java key store):
java用的儲存體金鑰的容器。可以同時容納n個公開金鑰或私密金鑰,尾碼一般是.jks或者.keystore或.truststore等,千奇百怪。
不管什麼尾碼,它就是一個容器,各個公司或機構叫法不同而已。比如把只包含"受信任的公開金鑰"的容器存成.truststore檔案等。
用jdk\bin目錄下的keytool.exe對其進行查看,匯入,匯出,刪除,修改密碼等各種操作。
可以對jks容器加密碼,輸入正確才可以操作此容器中密鑰。
還有一個密碼的概念與上者不同,是jks中儲存著的私密金鑰的密碼,通常是絕密的。

pfx:
和jks功能相同但檔案格式不同,pfx是瀏覽器用的。
可以用一些工具程式把pfx轉化成jks格式供java程式使用(如銀行只提供了pfx,但是我們想用httpclient類比瀏覽器自動訪問時)。
據說IE匯出的pfx格式不標準,轉化jks時往往報錯,可以嘗試用Netscape Navigator匯入再匯出,然後再轉化。碰到過這樣的情況。

常見的幾種https系統的訪問
經https協議的資料經過加密傳輸,防止第三方監聽,冒充和篡改。
1.不需要使用者做任何操作,比如https://www.verisign.com/
這是因為此公開金鑰是合法的(公開金鑰是可信任的機構頒發,和實際網域名稱吻合,而且沒有到期)。用IE訪問時空白處點右鍵可以查看公開金鑰資訊。
2.https的頁面會彈出公開金鑰確認提示
公開金鑰不合法(不是可信任的機構頒發,和實際網域名稱不吻合,已到期),但使用者點“是”即表示忽略危險,繼續訪問。
3.需要往瀏覽器倒入一個檔案才可訪問的
一般是銀行線上交易等特別需要安全的場合,站方(銀行)需要驗證訪客身份(如要確認必須是登入的網銀商戶),需要在瀏覽器中匯入含有訪客私密金鑰的pfx檔案。

產生jks:
在銀行沒有提供jks檔案的情況下對帳,需要自己產生jks
對於1,2類https網站,如果java程式訪問此地址時在jre預設的信任庫中找不到對方認證的頒發機構,則會拋出安全方面的異常。
所以要將站方公開金鑰存進一個jks,並在環境變數中設定,表明信任此庫中的公開金鑰,才可以正常訪問。
我是用現成的make_jks的工具類在程式中讀取https://xxxx地址,程式自動抓取出銀行公開金鑰並存進一個jks檔案。
在瀏覽器中查看站方公開金鑰時,把公開金鑰匯出(一般是cer尾碼),然後用keytool.exe手工將此cer匯入一個jks或許也可以?沒試過。
以上1,2類https網站,僅僅是用到了公開金鑰的“驗證對方身份”功能。
對於第3種https網站,也可以找到現成的程式把pfx直接轉成jks。
既然動用了pfx,一般是把公開金鑰的兩個用途和私密金鑰的兩個用途都用起來。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.