在客戶端身份驗證步驟中,如果證書過多,瀏覽器如何知道在SSL握手的客戶端身份驗證步驟中向服務器發送哪個證書。我的意思是它如何識別哪個服務器是哪個證書SSL握手 - 客戶端身份驗證
回答
現在對於CyberMonk的問題
如果你看到我的反應上面,你可以看到服務器是如何請求的客戶端發送一個證書,其值得信賴的權威之一。客戶可以根據此選擇證書。
如果發生衝突,瀏覽器通常會向您顯示證書列表,並要求您選擇其中一個要使用的證書。我知道Safari和Chrome確實如此。
最有可能的是,一旦您選擇了證書,瀏覽器將繼續在會話的其餘部分使用相同的證書。
現在,爲了讓tomcat的請求相同,如果這是一個自簽名證書,您可以將公共證書放在tomcat的truststore中。它不是一個自簽名證書,您必須將公共根CA證書放置在tomcat的信任存儲中
瀏覽器可能包含多個公用證書,但它不會將證書發送到服務器,除非它具有私有簽署它的鑰匙。只有在創建證書的過程中,您(或您的瀏覽器)纔會擁有私鑰。一旦您擁有私鑰並將私鑰/公鑰證書對導入瀏覽器,它將能夠發送證書。
它沒有。客戶端證書不是特定於服務器的。
服務器可以選擇性地向客戶端發送所需證書代理的列表。然後客戶可以選擇由所需CA簽署的證書。
如果是自簽名證書,該怎麼辦?以及我如何讓我的服務器(tomcat)告訴我,我想讓瀏覽器給我使用java keytool創建的證書?所以我可以在服務器的tomcat用戶領域驗證它(我希望這是我們驗證它的地方!)對於整個事情來說是非常新穎的。 – Cybermonk 2014-09-19 08:52:50
如果客戶端證書是自簽名的,則不存在您可以提供的信任錨點,因此它可能不起作用。但是,如果你在'trustStoreFile'中有預期的客戶端證書,它可能會起作用。除此之外,我猜Tomcat只是將'truststoreFile'中的所有CA的名稱發送給客戶端,但我對tomcat沒有自己的經驗。 – 2014-09-19 10:03:47
- 1. Jetty Truststore身份驗證與SSL客戶端身份驗證
- 2. 客戶端身份驗證(SSL)直通?
- 3. Angular JS SSL客戶端身份驗證
- 4. Java客戶端SSL握手
- 5. 「握手」身份驗證WCF
- 6. 客戶端身份驗證
- 7. 客戶端身份驗證或相互身份驗證
- 8. Webapi身份驗證,僅使用客戶端身份驗證
- 9. IIS 7.5和客戶端身份驗證
- 10. 如何支持SSL客戶端證書身份驗證?
- 11. php SSL客戶端證書身份驗證
- 12. 調試SSL握手
- 13. tomcat ssl客戶端握手java錯誤
- 14. Android客戶端的RESTful身份驗證
- 15. 客戶端身份驗證 - 處理客戶端證書
- 16. SOAP客戶端身份驗證C#401
- 17. 廉價的客戶端識別與正確的SSL客戶端身份驗證
- 18. Java手動客戶端證書身份驗證
- 19. 做SSL客戶端身份驗證是python
- 20. SSL客戶端身份驗證使用智能卡
- 21. python客戶端身份驗證使用ssl和套接字
- 22. Java SSL套接字客戶端身份驗證
- 23. Javascript客戶端身份驗證(使用SSL,無OAuth2)?
- 24. 使用客戶端身份驗證通過SSL進行卷曲
- 25. Python SSL套接字客戶端身份驗證
- 26. Winforms客戶端和SSL WCF表單身份驗證
- 27. 使用OpenSSL測試SSL/TLS客戶端身份驗證
- 28. wsHttpBinding綁定,客戶端身份驗證
- 29. Spring GemFire客戶端身份驗證
- 30. OAuth2客戶端身份驗證彈出
哦,如果是這樣,我把我的客戶端證書放在瀏覽器中。如果兩臺不同的服務器需要兩個不同的客戶端證書,客戶端將如何選擇合適的客戶端證書 例如:我的tomcat用戶xml有一個標記 證書在客戶端瀏覽器中以相同的值安裝。現在客戶瀏覽器如何知道握手時要選擇哪個證書 –
Cybermonk
2014-09-19 08:02:12