Ошибка keytool Keystore была изменена или пароль был неверен
Я получаю следующую ошибку при создании сертификатов на своей локальной машине.
C:\Users\abc>keytool -genkey -alias tomcat -keyalg RSA
Enter keystore password:
keytool error: java.io.IOException: Keystore was tampered with, or password was incorrect
Я думаю, что есть некоторые проблемы в jdk version.I запускал ту же самую команду на моей машине collegues, и она работает нормально.
Пожалуйста, поделитесь своими входом.
Ответы
Ответ 1
Из вашего описания я предполагаю, что вы на машине с Windows, а ваш дом abc
Итак: Причина
При запуске этой команды
keytool -genkey -alias tomcat -keyalg RSA
потому что вы не указываете явное хранилище ключей, оно попытается сгенерировать (и в вашем случае, когда вы получаете исключение, чтобы обновить) keystore C:\users\abc>.keystore
, и, конечно же, вам нужно предоставить старый пароль для .keystore, пока я считаю, что вы предоставляют вашу версию (новую).
Решение
-
Удалите .keystore
из C:\users\abc>
и попробуйте выполнить команду
-
или попробуйте выполнить следующую команду, которая создаст новый xyzkeystore:
keytool -genkey -keystore xyzkeystore -alias tomcat -keyalg RSA
Примечание: -genkey
теперь старое, вместо этого используйте -genkeypair
, хотя обе работают одинаково.
Ответ 2
Я решил это, используя пароль по умолчанию для хранилища cacerts: 'changeit'
Ответ 3
Этот ответ будет полезен для нового пользователя Mac (Works for Linux, Window 7 64 бит).
Пустой пароль работал в моем mac. (вставьте нижнюю строку в терминал)
keytool -list -v -keystore ~/.android/debug.keystore
когда он запрашивает
Enter keystore password:
просто нажмите кнопку ввода (не вводите ничего). Он должен работать.
Пожалуйста, убедитесь, что это файл по умолчанию debug.keystore
, а не файл хранилища ключей на основе проекта (для этого может измениться пароль).
Хорошо работает и для MacOS Sierra 10.10+.
Я слышал, он работает и в среде linux. Я еще не тестировал это в Linux.
Ответ 4
В Tomcat 8.5 обратите внимание, чтобы написать правильное имя атрибутов. Это мой код на server.xml:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/keystore" certificateKeystorePassword="mypassword" type="RSA"/>
</SSLHostConfig>
</Connector>
Вы можете посетить https://tomcat.apache.org/tomcat-8.5-doc/config/http.html, чтобы увидеть все атрибуты.
Ответ 5
Использование changeit для пароля также важно.
Эта команда, наконец, работала для меня (с причалом):
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass changeit -validity 360 -keysize 2048
Ответ 6
Работает на Windows
откройте командную строку (нажмите клавишу Windows + R, затем введите "cmd" без кавычек в появившемся диалоговом окне и нажмите клавишу ввода).
затем введите код сниффа ниже:
- cd C:\Program Files\Java\jdk1.7.0_25\bin
затем введите следующую команду
- keytool -list - хранилище ключей "C: /Documents and Settings/Ваше имя /.android/debug.keystore"
Затем он запросит пароль Keystore. Пароль по умолчанию - это тип "android", введите или просто нажмите "DONT TYPE ANY PASSWORD".
Ответ 7
Проверьте свою домашнюю папку ~/.gradle/gradle.properties
. Иногда, если у вас есть gradle.properties
в домашнем каталоге, он получает данные от него. Либо вы можете изменить это, либо удалить файлы. Затем он берет необходимые данные из вашей локальной папки.
Ответ 8
Я решил эту проблему, используя пароль по умолчанию "changeit".
Ответ 9
Обобщая советы на этой странице, я закончил со следующим:
keytool -genkeypair -keystore ~/.android/release.keystore -alias <my_alias> -storepass <my_cert_pass> -keyalg RSA
Затем у меня появился набор вопросов относительно имени, организации, местоположения и пароля для моего псевдонима.
Ответ 10
ошибка keytool: java.io.IOException: был поврежден Keystore или неверный пароль
Я решил проблему, когда изменил путь хранилища ключей C:\MyWorks\mykeystore на C:\MyWorks\mykeystore.keystore.
Ответ 11
Поймал эту вещь сегодня. Пробовал менять пароли - это не помогло.
В моем случае это помогло обновить Android Studio с 1.5 до 2.0. Не знаю почему, но теперь все работает.
Ответ 12
В моем случае мне нужно было иметь root
доступ.
Ответ 13
Я исправил эту проблему, удалив выходной файл и снова выполнив команду. Оказывается, он НЕ перезаписывает предыдущий файл. У меня была эта проблема при обновлении сертификата let encrypt с помощью tomcat
Ответ 14
[[email protected] Certificate]# openssl pkcs12 -export -in
/opt/Certificate/115c99f4c5aa98f5.crt -inkey /opt/Certificate/ravi.in.key -certfile
/opt/Certificate/gd_bundle-g2-g1.crt -out RaviNew.p12
Enter Export Password: <Password>
Verifying - Enter Export Password: <Password>
Примечание: - Над Экспортом Pasworrd запишите куда угодно, потому что это необходимо для создания файла JKS (это зависит от вашего выбора, какой пароль вы хотите сделать)
keytool -importkeystore -srckeystore DigiEduNew.p12 -srcstoretype pkcs12 -destkeystore finaldigiEdu.jks -deststoretype JKS
Importing keystore DigiEduNew.p12 to finaldigiEdu.jks...
Enter destination keystore password: <Any Password >
Re-enter new password: <Any Password >
Enter source keystore password: <.P12 Password >
Entry for alias 1 successfully imported.
Import command completed: 1 entries successfully imported, 0 entries failed or
cancelled
Warning:
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12
which is an industry standard format using "keytool -importkeystore -srckeystore
finaldigiEdu.jks -destkeystore finaldigiEdu.jks -deststoretype pkcs12".
Ответ 15
Это случилось со мной в самый первый раз при создании файла keystone. Я думал, что у него есть пароль по умолчанию. но в конце концов я ввел пароль своей учетной записи, и он работал в Mac.
Ответ 16
Для меня я решил это, изменив пароли с арабской буквы на английскую букву, но сначала я пошел в папку и удалил сгенерированный ключ, затем он работает.
Ответ 17
Пароль по умолчанию для хранилища ключей отладки - android
.
![enter image description here]()
Ответ 18
Ваш пароль неверный. Проверьте номерку !