Хранилище ключей (независимо от того, используется ли оно для «хранилищ ключей» или «хранилищ доверенных сертификатов») инициализируется после создания с использованием метода load()
. Одна версия ожидает InputStream
, соответствующего файлу хранилища ключей, и пароль для расшифровки файла. Мне кажется странным вводить пароль к методу программно.
Например, сервер использует хранилище ключей для хранения своих закрытых ключей и связанных сертификатов. Информация, представленная в хранилище ключей, является разумной, поэтому она защищена паролем. Каковы проблемы программной передачи пароля методу load()
? Какая лучшая практика?
Другой пример, но пока по поводу трастовых центров. У клиента есть хранилище доверенных сертификатов, в котором хранятся сертификаты доверенных центров сертификации. Насколько я понимаю, в хранилище доверенных сертификатов содержится не сертификат сервера, а только сертификаты центров сертификации, позволяющих проверить сертификат сервера. Я вижу один пример хранилища доверенных сертификатов, представленный с JRE (в папке security
- cacerts
). Глядя на конфигурацию, я вижу, что она защищена паролем по умолчанию changeit
. Я понимаю, что хранилище доверенных сертификатов реализовано с использованием хранилища ключей, поэтому оно должно (или, может быть, необязательно?) Быть зашифровано с помощью пароля. Но, поскольку доверенные магазины обычно хранят общедоступную информацию (сертификаты доверенных центров сертификации) в файле, почему рекомендуется менять пароль?
Спасибо