2017-08-02 60 views
0

我去的主要問題之前,我想陳述我對密鑰庫和信任庫理解:TLS認證的密鑰庫Trustores

1)密鑰庫 - 密鑰的詳細信息(私鑰),用它我會做我的身份驗證作爲服務器

2)Truststore - 根/ interm CAs和其他我信任的不同域的簽名證書的列表。

我正在嘗試建立一個服務器間認證和數據交換機制。我的所有服務器都具有FQDN格式,如myserverX.mydomain.net,其中X是索引,例如myserver1.mydomain.net。如果我對密鑰庫和信任庫的理解是正確的,那麼當myserver1請求myserver2中的數據時,它是myserver1誰是客戶端,myserver2是服務器。

這樣:

1)myserver1需要信任myserver2所以myserver2公鑰證書應在`MYSERVER1' 導入到信任。

2)當'myserver1'是服務器並且myserver2是客戶端時,上述情況也是如此 - 除了現在myserver1公鑰證書應該被導入myserver2信任庫。

我真的在這裏做事嗎?或者我有任何根本的錯誤?我的意圖是使用自簽名證書進行嘗試,然後爲我的服務器獲取適當的根CA簽名證書。但如果有人能夠解釋我是否在這裏做出任何錯誤的假設,我將不勝感激。

注 - 我將使用Java keytool和JKS類型的密鑰庫(使用默認的對稱密鑰算法和大小),我將使用-certreq and -gencert-selfcert爲我的測試生成自簽名證書。

回答

1

你說得對,但如果你使用CA簽名證書,則不需要導入步驟。根據定義,CA已經被信任,因此它們簽署的證書也是如此。所以你的測試毫無意義。 「

+0

」不需要導入步驟「 - 您的意思是說不需要」CA certficate「導入,但我仍然需要導入我的自簽名證書,對嗎? – ha9u63ar

+0

我的意思是我說的。這似乎很清楚。你的問題沒有意義。如果您使用CA簽名的證書,則不使用自簽名證書。 – EJP

+0

我想我正在努力理解的是當握手發生TLS時服務器發送的證書 - 這將是我的密鑰庫位置。如果這是由受信任的CA簽署的,則瀏覽器將正常繼續,否則通知該網站不受信任。 – ha9u63ar