理解Java Keystore和Truststore


大多數情況下,使用SSL/TLS通信時,需要keystore和truststore文件

Java 8和之前是使用JKS文件格式,之後是PKCS12文件格式

Difference Between a Java Keystore and a Truststore

Keystore 通常持有標識我們的證書,而Truststore持有標識其他人的證書

Keystore

服務器在使用HTTPS協議時,將使用Keystore存放私鑰條目、具有公鑰的證書或僅存儲祕密密鑰。

在SSL握手期間,服務器從Keystore查找私鑰,並將其對應的公鑰和證書提供給客戶端,客戶端做自我認證的時候,也有Keystore。

私鑰可以簽名或解密數據,公鑰可以驗證或加密數據,密鑰也可以執行這些功能。

Truststore

上一步提到服務器提供了公鑰和證書,客戶端在Truststore中查找相關的證書,如果外部服務器提供的證書或證書頒發機構不在客戶端的Truststore,將無法成功建立SSL握手。

https://www.baeldung.com/java-keystore-truststore-difference

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章