Tôi hiểu rằng kho khóa thường sẽ giữ khóa riêng / công khai và cửa hàng ủy thác chỉ có khóa công khai (và đại diện cho danh sách các bên đáng tin cậy mà bạn dự định liên lạc). Chà, đó là giả định đầu tiên của tôi, vì vậy nếu điều đó không đúng, có lẽ tôi đã không bắt đầu rất tốt ...
Tôi đã quan tâm mặc dù hiểu cách / khi bạn phân biệt các cửa hàng khi sử dụng keytool.
Vì vậy, cho đến nay tôi đã tạo một kho khóa bằng cách sử dụng
keytool -import -alias bob -file bob.crt -keystore keystore.ks
tạo tập tin keystore.ks của tôi. Tôi trả lời yes
cho câu hỏi tôi có tin tưởng bob không nhưng tôi không rõ liệu điều này có tạo ra tệp kho khóa hay tệp tin Truststore không? Tôi có thể thiết lập ứng dụng của mình để sử dụng tệp.
-Djavax.net.ssl.keyStore=keystore.ks -Djavax.net.ssl.keyStorePassword=x
-Djavax.net.ssl.trustStore=keystore.ks -Djavax.net.ssl.trustStorePassword=x
và với System.setProperty( "javax.net.debug", "ssl")
bộ, tôi có thể xem chứng chỉ theo các chứng chỉ tin cậy (nhưng không phải trong phần kho khóa). Chứng chỉ cụ thể mà tôi đang nhập chỉ có một khóa công khai và tôi dự định sử dụng nó để gửi nội dung qua kết nối SSL tới Bob (nhưng có lẽ đó là cách tốt nhất để lại cho một câu hỏi khác!).
Bất kỳ con trỏ hoặc làm rõ sẽ được nhiều đánh giá cao. Đầu ra của keytool có giống với bất cứ thứ gì bạn nhập không và quy ước chỉ nói rằng một là kho lưu trữ khóa và cái kia là một cửa hàng tin cậy? Mối quan hệ khi sử dụng SSL là gì?