Я понимаю, что хранилище ключей обычно содержит закрытые / открытые ключи, а хранилище доверенных сертификатов - только открытые ключи (и представляет список доверенных сторон, с которыми вы собираетесь общаться).Ну, это мое первое предположение, так что если это не правильно, я, вероятно, не очень хорошо начал ...
Мне было интересно узнать, как / когда вы различаете магазины при использовании keytool.
Итак, на данный момент я создал хранилище ключей, используя
keytool -import -alias bob -file bob.crt -keystore keystore.ks
, который создает мой файл keystore.ks.Я отвечаю yes
на вопрос, доверяю ли я Бобу, но мне неясно, создал ли он файл хранилища ключей или файл хранилища доверенных сертификатов?Я могу настроить свое приложение на использование файла как.
-Djavax.net.ssl.keyStore=keystore.ks -Djavax.net.ssl.keyStorePassword=x
-Djavax.net.ssl.trustStore=keystore.ks -Djavax.net.ssl.trustStorePassword=x
и с установленным System.setProperty( "javax.net.debug", "ssl")
, я могу видеть сертификат в доверенных сертификатах (но не в разделе хранилища ключей).Конкретный сертификат, который я импортирую, имеет только открытый ключ, и я намерен использовать его для отправки материалов по соединению SSL Бобу (но, возможно, лучше оставить его для другого вопроса!).
Любые указатели или пояснения могутбыть высоко ценится.Является ли вывод keytool тем же, что вы импортируете, и это просто соглашение, которое гласит, что одно - хранилище ключей, а другое - хранилище доверия?Какая связь при использовании SSL и т. Д.