keytool error 키 저장소가 변조되었거나 비밀번호가 올바르지 않습니다
로컬 컴퓨터에서 인증서를 생성하는 동안 다음 오류가 발생합니다.
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 버전에 몇 가지 문제가 있다고 생각합니다. 내 동료 컴퓨터에서 동일한 명령을 실행했는데 정상적으로 작동합니다.
입력을 공유하십시오.
귀하의 설명에서 나는 당신이 Windows 컴퓨터에 있고 가정은 ABC라고 가정합니다.
그래서 지금 : 원인
이 명령을 실행할 때
keytool -genkey -alias tomcat -keyalg RSA
명시 적 키 저장소를 지정하지 않기 때문에 키 저장소를 생성하려고 시도합니다 (귀하의 경우 예외로 업데이트하기 위해). 키 C:\users\abc>.keystore
버전을 제공한다고 생각하는 동안 .keystore에 대한 이전 비밀번호를 제공해야합니다. 새로운).
해결책
위치
.keystore
에서 삭제C:\users\abc>
하고 명령을 시도하십시오.또는 새로운 xyzkeystore를 생성하는 다음 명령을 시도하십시오.
keytool -genkey -keystore xyzkeystore -alias tomcat -keyalg RSA
참고 : -genkey
이제는 오래 -genkeypair
되었지만 둘 다 똑같이 작동합니다.
cacerts 키 저장소의 기본 비밀번호를 사용하여 해결했습니다. 'changeit'
이 답변은 새로운 Mac 사용자에게 유용합니다 (Linux 용, Windows 7 64 비트도 가능).
비어있는 암호가 내 Mac에서 작동했습니다. (아래 줄을 터미널에 붙여 넣으십시오)
keytool -list -v -keystore ~/.android/debug.keystore
그것을 요구할 때
Enter keystore password:
그냥 Enter 버튼을 누르십시오 (아무것도 입력하지 마십시오). 작동해야합니다.
debug.keystore
프로젝트 기반 키 저장소 파일이 아니라 기본 파일 인지 확인하십시오 (암호가 변경 될 수 있음).
MacOS Sierra 10.10 이상에서도 잘 작동합니다.
나는 그것이 리눅스 환경에서도 작동한다고 들었다. 나는 아직 리눅스에서 그것을 테스트하지 않았습니다.
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 을 방문 하여 모든 속성을 볼 수 있습니다
비밀번호에 changeit을 사용하는 것도 중요합니다.
이 명령은 마침내 부두와 함께 나를 위해 일했습니다.
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass changeit -validity 360 -keysize 2048
Windows에서 작동
명령 프롬프트를 엽니 다 (Windows 키 + R을 누른 다음 나타나는 대화 상자에 따옴표없이 "cmd"를 입력 한 다음 Enter 키를 누름).
그런 다음 아래 코드 스 니프를 입력하십시오.
- cd C : \ Program Files \ Java \ jdk1.7.0_25 \ bin
그런 다음 다음 명령을 입력하십시오
- keytool -list -keystore "C : / 문서 및 설정 / 사용자 이름 /.android/debug.keystore"
그런 다음 키 저장소 비밀번호를 요청합니다. 기본 비밀번호는 "android"유형이며 "DONT TYPE ANY PASSWORD"를 입력하거나 Enter 키를 누르십시오.
홈 폴더를 확인하십시오 ~/.gradle/gradle.properties
. 때로는 gradle.properties
홈 디렉토리에 있으면 거기에서 세부 사항을 가져옵니다. 변경하거나 파일을 삭제할 수 있습니다. 그런 다음 로컬 폴더에서 필요한 세부 정보를 가져옵니다.
기본 비밀번호 " changeit "를 사용하여이 문제를 해결했습니다 .
이 페이지의 조언을 요약하면 다음과 같이 마무리되었습니다.
keytool -genkeypair -keystore ~/.android/release.keystore -alias <my_alias> -storepass <my_cert_pass> -keyalg RSA
그런 다음 별칭의 이름, 조직, 위치 및 비밀번호에 관한 일련의 질문을 받았습니다.
키 도구 오류 : java.io.IOException : 키 저장소가 변조되었거나 비밀번호가 올바르지 않습니다.
키 저장소 경로 C : \ MyWorks \ mykeystore 를 C : \ MyWorks \ mykeystore.keystore로 변경했을 때 문제가 해결되었습니다 .
제 경우에는 root
액세스 권한 이 필요했습니다 .
I fixed this issue by deleting the output file and running the command again. It turns out it does NOT overwrite the previous file. I had this issue when renewing a let's encrypt cert with tomcat
[root@localhost 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>
Note :- Above Export Pasworrd write down anywhere because it is must to create JKS file ( It is depend on your choice what password you want to make )
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".
For me I solved it by changing passwords from Arabic letter to English letter, but first I went to the folder and deleted the generated key then it works.
'Programing' 카테고리의 다른 글
활성 app.config 파일의 경로를 찾는 방법은 무엇입니까? (0) | 2020.06.01 |
---|---|
R에서 CRAN 미러를 선택하는 방법 (0) | 2020.06.01 |
SQL Server에서 foreach를 작성하는 방법은 무엇입니까? (0) | 2020.06.01 |
ConstraintLayout에서 요소를 가운데에 배치하는 방법 (0) | 2020.05.31 |
UIWebView에 로컬 html 파일을로드하는 방법 (0) | 2020.05.31 |