Доступ к хранилищу ключей не запрашивает пароль
Я сгенерировал хранилище ключей с помощью команды keytool, при создании хранилища ключей я предоставил пароль для хранилища ключей, команда
keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize 2048
Теперь доступ к хранилищу ключей Используя JAVA API, мне не нужно указывать пароль для перечисления записи в наборе ключей, я могу видеть, что есть сертификат и псевдонимы, без указания пароля для хранилища ключей.
KeyStore store = = KeyStore.getInstance("JKS");
store.load(new ByteArrayInputStream(bOut.toByteArray()), null);
Enumeration en = store.aliases();
while (en.hasMoreElements())
{
String alias = (String)en.nextElement();
System.out.println("found " + alias + ", isCertificate? " + store.isCertificateEntry(alias));
}
При доступе к хранилищу ключей с помощью keytool запрашивался пароль как исключение
bash # keytool -list -v -keystore keystore.jks
Enter keystore password:
Так пароль применим только для keytool? это мое замешательство
1 ответ
Решение
Пароль требуется только при обновлении хранилища ключей или через API для доступа к закрытому ключу. Например, javax.net.ssl.keyStorePassword является обязательным, но javax.net.ssl.trustStorePassword является необязательным.