Я создал глобальный JKS, в котором в качестве пароля хранилища ключей используется changeme.Я создал JKS с помощью Keystore Explorer.
Идея использования глобального JKS заключается в том, что приложения могут снять JKS с S3 и затем сбросить JKS с помощью собственного строкового пароля.У нас есть много API SpringBoot, и мы используем JKS для защиты Tomcat в контейнере, чтобы мы могли подключить HTTPS.
Но вот проблема, с которой я сталкиваюсь, когда я меняю пароль хранилища ключей JKS, я начинаю получатьjava.security.UnrecoverableKeyException: Cannot recover key
выдаваемые ошибки.
В проводнике хранилища ключей я не указывал пароль для псевдонима.Когда я захожу в Keystore Explorer, чтобы изменить пароль псевдонима, он принимает «changeme» в качестве пароля.Итак, я предполагаю, что Keystore Explorer автоматически использует changeme в качестве пароля, поскольку я предоставил его для пароля хранилища ключей JKS.
По общему признанию, я не эксперт по использованию JKS и пониманию тонкостей безопасности, но у этого естьменя поставили в тупик.
Я также пытался изменить оба пароля хранилища ключей с помощью Keytool, используя следующую команду:
keytool -storepasswd -keystore myJKS.jks
и
keytool -keypasswd -alias myalias -keystore myJKS.jks
Но когда я пытаюсьчтобы изменить псевдоним:
ошибка keytool: java.io.IOException: подделка хранилища ключей или неверный пароль
Что я делаю не так?
Спасибо