Android에서 분실 한 KeyStore 비밀번호를 처리하는 방법은 무엇입니까?


98

키 스토어 비밀번호를 잊어 버려서 더 이상 무엇을해야할지 모르겠습니다 (변명을 할 수 없습니다). 방금 버그를 수정했기 때문에 앱을 업데이트하고 싶지만 더 이상 불가능합니다. 동일한 키 저장소를 사용하지만 새 키를 생성하면 어떻게됩니까? 그래도 앱을 업데이트 할 수 있고 업데이트 할 수없는 경우 업데이트 된 버전에 대한 정보를 사용자에게 제공하려면 어떻게해야합니까?

누군가 이와 같은 문제가 있거나 문제가 발생한 경우 상황을 해결하기 위해 어떤 조언을 할 수 있습니까? 다행히도 무료 앱입니다.


Google+의 Zach Klippenstein에는 귀하와 같은 문제가있었습니다. 여기 에서 스레드를 따를 수 있습니다 .
Freelance PHP Programmer

React Native를 사용하고 있다면 gradle.properties에서 찾을 수 있습니다
colemerrick

답변:


44

보다 이 링크

안타깝지만 키 저장소 또는 키 저장소의 비밀번호를 분실하면 애플리케이션이 고아가됩니다. 할 수있는 유일한 방법은 새 키를 사용하여 앱을 시장에 다시 제출하는 것입니다.

항상 키 저장소를 백업하고 안전한 위치에 암호를 적어 두십시오.


그래서 제가 할 수있는 최선은 다른 버전의 애플리케이션을 업로드하고 제목이나 이전 앱 등에서 설명을 제공하는 것입니다. 권리?
irobotxx

1
실제로 현재 앱을 게시 취소하고 동일한 제목과 설명을 가진 새 버전으로 바꾸고 사용자가 결국 찾을 수 있기를 바랍니다. 이번에는 암호를 적어 두십시오.;)
Zebaz

제대로하기 위해 3 번의 시도가 있습니다. 세 번째 시도에서 잘못된 경우 마법사를 닫고 다시 열어야합니다. 4 번째 시도에서 정확한 비밀번호를 입력해도 틀렸다고 알려줍니다. 명령 줄을 통해 keytool을 실행하고 재시도 제한을 관찰하여 이것을 발견했습니다.
The Muffin Man

@Zebaz 키 저장소 비밀번호를 잊어 버린 경우 번들을 통해 업로드 할 수 있습니까? 또는이를 위해 암호도 필요합니까?
Ponomarenko Oleh

1
새 jks 파일을 만들고 Google에 이전 앱에 서명하도록 요청할 수 있습니다
Rahul Gaur

223

이 문제가 직접 발생했습니다. 운 좋게도 Gradle의 임시 파일에서 비밀번호를 찾을 수있었습니다. 누군가 여기에 도착할 경우를 대비하여 :

이 파일을 찾아보십시오

..Project\.gradle\2.4\taskArtifacts\taskArtifacts.bin

or

.gradle/3.5/taskHistory/taskHistory.bin
.gradle/5.1.1/executionHistory/executionHistory.bin
.gradle/caches/5.1.1/executionHistory/executionHistory.bin

및 검색

storePassword

평문으로 거기에있었습니다. 일반적으로 암호의 일부를 기억하고 있다면이 부분 문자열이 포함 된 파일을 검색해보십시오.

여기에서 버리고 싶었는데 결국 누군가에게 도움이 될 것입니다.


편집하다: 더 잘 보이도록 주석에서 새로운 통찰력을 추가했습니다.

Vivek Bansal, Amar Ilindra 및 Uzbekjon에게 감사드립니다.


33
이 사람에게 메달을주세요 ... 다른 사람이 비밀번호를 더 빨리 찾을 수 있도록 : ".keyPassword"를 몇 번 검색하면 비밀번호가 표시됩니다. @ EldoRado1239 정말 감사합니다 :)
Kermia

9
.storePassword 시도
비벡 반살

6
OSX / Linux를 사용하는 경우이를 실행하여 저장된 비밀번호 항목을 쉽게 가져올 수 있습니다. strings taskArtifacts.bin | grep storePassword -A1 그런데 ElDoRado1239에게 감사드립니다. 당신은 저에게 큰 시간을 절약했습니다.
James Nick Sears

4
경우 위의 경로를 찾을 수 없습니다,이 하나를 시도 ..Project \ .gradle \ 3.5 \ taskHistory \ taskHistory.bin
아마르 Ilindra

2
도움말 난에서 언급 한 디렉토리 중 하나를 찾을 수 있습니다 5.1.1Gradle을
제임스 기독교 Kaguo에게

43

잘못된 암호가 제공되는 경우 한 번이라도 다음 시도에 대해 계속 말합니다.

키 저장소가 변조되었거나 비밀번호가 올바르지 않습니다.

올바른 것을 제공하더라도. 여러 번 해봤는데 일종의 보호 책일 수도 있습니다.
내보내기 마법사를 닫고 올바른 비밀번호로 다시 시작하면 이제 작동합니다. :)


8
당신은 "가까운 수출 마법사"무엇을 의미합니까
사가르 Chavada

내보내기 마법사 란 무엇입니까?
Jigar Fumakiya

38

Brute가 최선의 방법입니다!

다음은 나를 도왔던 스크립트입니다.

https://code.google.com/p/android-keystore-password-recover/wiki/HowTo

매우 빠른 복구를 위해 암호에 포함 할 수 있는 단어 목록을 선택적으로 제공 할 수 있습니다 (저에게는 1 초 미만으로 작동 함).


불행히도 그것은 나를 위해 작동하지 않았습니다. 나는 단어 목록을 주었고 나중에 그것이 특정 순서로이 단어들 중 세 단어라는 것을 알게되었지만 나는 그것을 스스로 알아 내야했습니다. 감사하지만 공유, 기쁜는 다른 사람을 도움
테오 INKE에게

그것은 나를 위해 완벽하게 작동했습니다! 올바른 사전으로 단 10 초
gyss

내부 키의 비밀번호를 복구하는 데 효과적이지만 키 저장소 자체의 비밀번호도 분실 한 경우 어떻게해야합니까? @kiruwka는 그의 대답 에서 문제가 아니라고 말했습니다 ... 그는 실제로 그것을 의미합니까?
SebasSBM

26

taskHistory로 이동

마침내 이틀을 보낸 후 해결책을 찾았습니다 ...

다음과 같이하세요:

  1. 프로젝트로 이동
  2. .gradle에서 내 경우에는 gradle 버전 폴더를 찾으십시오 .4.1 (그림 참조)
  3. 4.1 폴더를 확장 한 다음 taskHistory 폴더에서 taskHistory.bin 파일을 찾을 수 있습니다.
  4. android studio 자체에서 taskHistory.bin 파일을 엽니 다.
  5. ".storePassword"를 검색하십시오. .. 키 저장소 비밀번호를 얻었습니다.

이것은 정말 저에게 효과적이었습니다.

이것을 시도하고 행복한 코딩 !!!


안타깝게도 Android 3.5.3을 사용하면 .bin 파일에 관련 정보가 없습니다.
RominaV

19

MAC에서 콘솔 유틸리티를 실행하고 ~ / Library / Logs-> AndroidStudio-> idea.log.1 (또는 이전 로그 번호)까지 아래로 스크롤 한 다음 "keystore"를 검색하면 로그 어딘가에 나타납니다.

원래 질문 : 링크


이 클라이언트에서 내 생명을 구 - 우리가 코르도바 / phonegapp 응용 프로그램과 함께 일부 꿀꺽 스크립트를 사용했기 때문에 다른 모든 옵션 '에 avialable를 werent
rarspace01

"keystore"를 사용하여 찾을 수 없지만 "key.password"를 사용하여 찾을 수 없습니다
ceed

17

솔루션 2019 (Windows, Android Studio 3.3, gradle 4.10) :

이 솔루션은 "암호 기억"확인란이 이전에 표시된 경우에만 작동합니다.

우선이 버전의 gradle에는 taskArtifacts.bin이 없으며 idea.log는 암호에 별표를 표시합니다. 이것은 나에게 효과가 없었던 옛날 솔루션이었습니다.

일반 텍스트 비밀번호를 찾은 위치 : C : \ Users \ {username} \ AndroidStudioProjects \ {project} \ app \ build \ intermediates \ signing_config \ release \ out \ signing-config.json

키 : mStorePassword 및 mKeyPassword.

다른 사람에게 도움이 되었으면합니다.


와! Ubuntu에서도 작동합니다! 어떻게 감사해야할지 모르겠어요!
زياد

AS 3.5.3에서 여전히 작동하는지 확인할 수 있습니다. 감사합니다!
RominaV

17

사실, 잃는 keystore password것은 문제가 아닙니다. 아래 명령을
사용하여 새 키 저장소를 만들고 새 암호를 설정할 수 있습니다 keytool. 원래 키 저장소 비밀번호가 필요하지 않습니다.

keytool -importkeystore -srckeystore path/to/keystore/with/forgotten/pw \
-destkeystore path/to/my/new.keystore

프롬프트가 표시되면 사용자 new.keystore소스 키 저장소 비밀번호 (잃어버린)에 대한 비밀번호를 작성 하고 Enter를 누르 십시오 .
확인되지 않은 무결성에 대한 경고가 표시되고 새로 설정된 암호로 원본과 동일한 new.keystore가 표시됩니다.

이것이 작동하는 이유 keystore password는의 무결성을 제공하기 위해서만 사용 keystore되며 private key password, 실제로 개인 키를 암호화 된 상태로 유지하는와 달리 데이터를 암호화하지 않습니다 .

private key password앱에 서명 하려면 귀하 를 알고 있어야합니다 . 글쎄, 잊혀진 것과 같으면 keystore password@Artur의 대답과 같이 bruteforce에 의지 할 수 있습니다.

이 접근 방식은 항상 저에게 효과적이었습니다.


나는 이것을 시도했고 목적지에 대한 암호를 입력하게 만듭니다. Enter 키를 계속 누르면 나중에 3 번 시도한 후 다시 시도하라는 메시지가 표시됩니다.
The Muffin Man

@TheMuffinMan 죄송합니다, 완전히 문제를 해결하지 못했습니다. 새 키 저장소 pw로 새 키 저장소를 만들었습니까?
kiruwka 2015

1
이렇게하면 새 키 저장소가 생성되지만 새 키 저장소를 사용하려고하면 오류 메시지가 표시 jarsigner: key associated with mykey-release not a private key됩니다. 내가 뭔가를 놓치고 있습니까?
phihag 19

@phihag 같은 문제에 직면하고 있습니다. 해결책을 찾으셨습니까?
Teddy Kossoko 19.11.25

13

댓글에만있는 것이 아니기 때문에 답을해야한다고 생각합니다. @ ElDoRado1239가 그의 대답에서 말하는 것처럼 ( 그의 대답을 찬성하는 것을 잊지 마십시오 ;)

  • 찾는 ..Project\.gradle\2.4\taskArtifacts\taskArtifacts.bin내 경우는 있었다 ..Project\.gradle\2.2.1\taskArtifacts\taskArtifacts.bin내가 사용하기 때문에gradle 2.2.1
  • 그런 다음 storePassword@Moxet Khan이 댓글에서 말한 것처럼 찾으십시오 ... 내 경우에는 줄에있었습니다.signingConfig.storePassword¬í t my.forgoten.password—signingConfig.keyAlias

다른 사람을 도와주세요 !!!


12

다행히도 Android 스튜디오 로그에서 키 저장소 경로 및 별칭 이름과 함께 분실 한 비밀번호를 찾았습니다.

Linux / Unix 기반 컴퓨터를 실행하는 경우.

Library Logs 디렉토리로 이동

cd ~/Library/Logs/

마지막 릴리스 APK를 빌드하는 데 사용한 Android 스튜디오 버전을 기억한다면 거기에 있습니다. 해당 디렉토리로 이동

예 : cd AndroidStudio1.5 /

거기에서 로그 파일을 찾을 수 있습니다. 모든 로그 파일 (idea.log)에서 키 저장소 자격 증명을 찾을 수 있습니다.

-Pandroid.injected.signing.store.file=/Users/myuserid/AndroidStudioProjects/keystore/keystore.jks, 
-Pandroid.injected.signing.store.password=mystorepassword, 
-Pandroid.injected.signing.key.alias=myandroidkey, 
-Pandroid.injected.signing.key.password=mykeypassword,

Android Studio 사용자에게 도움이 되었기를 바랍니다.


11
나는 이것이 AndroidStudio3.0에서 작동하지 않는다고 생각합니다. 모든 정보는 키 저장소 비밀번호와 키 비밀번호 모두에 대해 동일한 길이로 *******로 표시됩니다.
TheLearner 2017

게시물 주셔서 감사합니다. 나는 또한 위의 답변을 편집했습니다. 이 두 위치는 구세주입니다. 앞으로 Android Studio의 Keystore 도구가 다른 릴리스를 위해 1 년 또는 2 년 후에 필요하므로 암호를 저장하도록 사용자에게 경고하기를 바랍니다.
MG 개발자

11

조금 늦었을 수도 있지만 확실히 누군가에게 도움이 될 것입니다. 기억 나는 것이 있으면 비밀번호를 검색 할 수 있습니다.

signingConfig.storePassword

또한 키 별칭을 잊어 버린 경우 여기에서 signingConfig.keyAlias 와 같은 항목도 검색 할 수 있습니다.

Project.gradle \ 3.3 \ taskArtifacts \ taskArtifacts.bin

누군가를 도울 수 있기를 바랍니다.


9

이 문제를 겪을 수있는 다른 사람을 위해 본인이나이 기사를 검색하는 다른 사람 (나와 같은)을위한 답변을 공유하고 싶었습니다.

Eclipse를 사용하고 있으며 1.0 릴리스 용으로 키 저장소를 만들었습니다. 3 개월을 앞두고 1.1로 업데이트하고 싶었습니다. Eclipse에서 내보내기 ...를 선택하고 해당 키 저장소를 선택했을 때 기억할 수있는 암호가 작동하지 않았습니다. "키 스토어가 변조되었거나 비밀번호가 잘못되었습니다." 라고 표시 될 때마다 내가 그것을 작동 시키려고 노력할 수있는 한 (약 1 주일 정도) 무차별 대입 프로그램을 실행할 준비가 된 시점에 이르렀습니다.

운 좋게도 Eclipse 외부에서 서명되지 않은 .apk 파일에 서명합니다. 짜잔-작동했습니다! 내 비밀번호는 항상 정확했습니다! 이유는 모르겠지만 내보내기 메뉴를 통해 Eclipse에 서명하면 비밀번호가 정확하더라도 오류가보고되었습니다.

따라서이 오류가 발생 하는 경우 시장에 APK를 준비하는 데 도움이 되는 단계 ( Android 문서 에서 가져옴)는 다음과 같습니다.

참고 : Eclipse에서 서명되지 않은 APK를 가져 오려면 프로젝트> Android 도구> 서명되지 않은 애플리케이션 내보내기를 마우스 오른쪽 버튼으로 클릭합니다.

  1. 키 저장소로 서명되지 않은 APK 파일 서명

    ㅏ. 관리자 cmd 프롬프트를 열고 "c : \ Program Files \ Java \ jdk1.6.0_25 \ bin"또는 가지고있는 Java 버전 (서명되지 않은 apk 파일 및 키 저장소를 복사 한 위치)으로 이동합니다.

    비. 동일한 디렉토리에 키 저장소 파일과 서명되지 않은 apk가있는 cmd 프롬프트에서 다음 명령을 입력하십시오. jarsigner -keystore mykeystorename.keystore -verbose unsigned.apk myaliasnamefromkeystore

    씨. "Enter Passphrase for keystore :"라고 표시됩니다. 그것을 입력하고 Return을 누르십시오.

    디. ===> 성공은 다음과 같습니다.

    adding: META-INF/MANIFEST.MF
    ...
    signing: classes.dex

    이자형. 서명되지 않은 버전이 제자리에 덮어 써 지므로 서명 된 apk 파일은 이제 서명되지 않은 파일과 동일한 파일 이름입니다.

  2. ZipAlign을 사용하여 시장에 배포 할 서명 된 apk 파일 압축

    ㅏ. 관리자 cmd 프롬프트를 열고 "c : \ AndroidSDK \ tools"또는 Android SDK를 설치 한 위치로 이동합니다.

    비. 다음 명령을 입력하십시오. zipalign -v 4 signed.apk signedaligned.apk

    씨. ===> 성공은 다음과 같습니다.

    Verifying alignment of signedaligned.apk (4)
    50 META-INF/MANIFEST.MF (OK - compressed)
    ...
    1047129 classes.dex (OK - compressed)
    Verification succesful

    디. 서명되고 정렬 된 파일은 signedaligned.apk (이전 명령에서 지정한 파일 이름)에 있습니다.

========> 마켓 플레이스에 제출할 준비가되었습니다.


암호가 잘못되었다는 오류를받은 이유는 암시 적으로 설정된 keyalg / sigalg / digestalg가 잘못 되었기 때문입니다. Java 버전에 따라 이러한 값에 대한 기본값이 다릅니다.
Will Vanderhoef 2013 년

eclipse가 내 암호를 거부했을 때 나는 지옥 이었지만 당신의 방식으로 시도했을 때 작동했습니다. 감사합니다!
Hardik4560 2014 년

9

Android Studio에서 분실 한 키 저장소 비밀번호를 복구하기위한 가능한 옵션을 조사하는 데 거의 하루를 보낸 후. 다음 4 가지 가능한 방법을 찾았습니다.

  1. AndroidKeystoreBrute 를 사용 하여 비밀번호를 검색하세요. 이 방법은 암호를 부분적으로 잊어 버린 경우에 매우 유용합니다. 즉, 여전히 암호에 대한 힌트가 마음에 남아 있음을 의미합니다.

  2. 이전에 동일한 머신으로 앱 (키 저장소 비밀번호를 찾는 앱)을 출시 한 경우 Android Studio 로그 파일을 통해 검색 할 수도 있습니다. 다음 디렉토리를 참조하십시오.

    맥 OS X

    ~ / Library / Logs / AndroidStudio / idea.log.1

    Linux (가능한 위치)

    / home / user_name / AndroidStudio / system / log

    Windows (가능한 위치)

    C : \ Users \ user_name \ AndroidStudio \ system \ log

    Pandroid.injected.signing.key.password파일 내부를 검색 합니다. 현재 찾고있는 것과 동일한 Android Studio 버전으로 이전에 앱에 서명 한 경우 비밀번호가 표시됩니다.

  3. 프로젝트의 .gradle 디렉토리를 통해 비밀번호를 검색 할 수도 있습니다. 다음 경로를 찾으십시오.

    project_directory / .gradle / 2.4 / taskArtifacts / taskArtifacts.bin.

    참고 : Gradle의 최신 버전 (2.10 이상)에서는 작동하지 않는 것 같습니다.

  4. 위의 해결 방법 중 어느 것도 작동하지 않으면이 방법을 시도해 볼 수 있지만이 경우에도 Android Studio IDE 앱이 있거나 프로젝트 키 저장소 암호가 이전에 저장되어있는 환경 설정이 있어야합니다 (로그인 할 때 암호 기억 옵션 사용). 앱). 다음 경로에서 IDE 기본 설정을 가져올 수 있습니다.

    맥 OS X

    ~ / Library / Logs / AndroidStudio / idea.log.1

    Linux (가능한 위치)

    / home / user_name / AndroidStudio

    Windows (가능한 위치)

    c : \ 사용자 \ 사용자 이름 \ .AndroidStudio

    이전 IDE의 환경 설정을 새 IDE로 가져 오거나 가져 오면 이전 Android Studio IDE를 사용하고 이전에 서명했을 때와 동일한 경로에 키 저장소 파일을 넣고 마지막으로 비밀번호를 저장하십시오.

    이런 식으로 프로젝트를 열고 Build-> Generate Signed APK를 시도하고 이전 위치에서 키 저장소 파일을 선택하면됩니다. 자동으로 비밀번호를 검색하고 출시를 위해 서명 된 APK를 계속 생성합니다.

    릴리스 APK가 성공적으로 생성되면 앞서 언급 한 옵션 2에 따라 최근 생성 된 릴리스 APK의 로그 파일에서 비밀번호를 확인할 수 있습니다.


로그 검색은 매력처럼 도움이되었습니다. 고맙습니다, 당신은 나의 진정을 구했습니다
rommex

idea.log.1을 찾았습니다. 어떻게 열 수 있습니까?
KZoNE

너희들은 생명의 은인이다. idea.log.12에서 내 것을 찾았습니다-txt로여십시오!
Victor R. Oliveira

7

먼저 AndroidKeystoreBrute_v1.05.jar를 다운로드 한 다음 주어진 이미지를 따릅니다.여기에 이미지 설명 입력

(wordlist.txt)와 같은 하나의 단어 목록 파일을 준비하십시오. 해당 파일에서 다음과 같은 힌트를 제공하십시오.

비밀번호 힌트:

사용자

사용자

암호

암호

pa55word

암호

@

*

#

$

&

1

2

123

789

U는 귀하의 암호를 얻을 것입니다.


안녕하세요, 결과를 얻지 못했습니다. 도와주세요
Nimisha V

@NimishaV 당신이 직면 발행 무슨
스 리니 바스 Keerthiprakasam

7

키 스토어 비밀번호를 얻는 가장 간단한 방법

project_folder \ app \ build \ intermediates \ signing_config \ release \ out \ signing-config.json

signing-config.json에서 StorePassword 에 대한이 파일 검색을 확인하십시오.

{"mName":"externalOverride","mStoreFile":"C:\\Users\\dAvInDeR\\Desktop\\KEYSTORE\\keystore.jks","mStorePassword":"1234@#abcd","mKeyAlias":"uploadkey","mKeyPassword":"1234@#abcd","mStoreType":"jks","mV1SigningEnabled":false,"mV2SigningEnabled":false}

그것이 당신을 도울 것입니다.


2
이것은 말 그대로 당신이 시도한 마지막 암호이며 사용자가 다른 암호를 시도했을 수 있습니다. 그렇다면 그들이 잘못된 암호를 얻을 것이다
아미르 도라.

마지막으로 생성 된 APK 암호 만 있으며 새 apk를 생성하는 동안 json 파일이 항상 변경됩니다.
Tarit Ray

이것은 내 하루를 구했습니다!
Chathurika Senani

당신은 정말로 나를 구했습니다!
Benhar Upasana

5

이것을 또 다른 가능성으로 추가합니다. 과거 어느 시점에서 서명 구성을 지정한 경우 앱의 build.gradle 파일에 답이 바로 코 밑에있을 수 있습니다.

signingConfigs {
    config {
        keyAlias 'My App'
        keyPassword 'password'
        storeFile file('/storefile/location')
        storePassword 'anotherpassword'
    }
}

운이 좋으세요?!


3

나는 한 번에 같은 문제가 있었다. Google Play의 앱 서명을 사용하면 키 저장소를 잃어 버리거나 암호를 잃어 버리는 것이 이전처럼 큰 문제가 아니지만 개발자로서 우리는 며칠 동안 Google에서 처리 할 때까지 기다리지 않고 암호를 변경하고 생성 된 키 저장소 파일을 사용하는 것을 선호합니다. (Google에서이 문제를 처리하려면이 링크 를 사용하여 요청하십시오.)이 문제를 직접 처리하려면 먼저 여기에서 두 개의 .java 파일을 다운로드하십시오. 링크 하십시오 . 그런 다음 javac ChangePassword.java명령으로 ChangePassword.java를 컴파일하십시오 . 그런 다음 실행 후

java ChangePassword <oldKeystoreFileName.keystore> <newKeystoreFileName.keystore>

oldKeystoreFileName.keystore 변경 현재 키 스토어 파일의 경로 / 이름, 그리고 newKeystoreFileName.keystore 새로운 생성 된 새로운 키 스토어 파일의 경로 / 이름. 이것은 당신을 승진시킬 것입니다

키 저장소 비밀번호 입력 :

. 원하는 것을 입력하기 만하면됩니다. :) 분실 한 원래 비밀번호 일 필요는 없습니다. 그런 다음 *로 새 비밀번호를 입력하십시오.

새 키 저장소 비밀번호 :

  • 짜잔, 그게 다야. 이것은 키 저장소의 체크섬을 변경하지 않으며 앱 서명 또는 play.google 이벤트에 업로드하는 데 문제가되지 않습니다.

@SIW, ChangePassword와 함께 이전 키 저장소를 사용하여 새 키 저장소를 만들어 비밀번호를 변경합니다. 나는 내 별명이 아닌 개인 키와 관련된 키 가지고 서명 할 때
테디 Kossoko

3

열기 taskHistory.bin및 검색storePassword


해당 파일에서 "storePassword"와 관련된 항목을 얻지 못함
Tarit Ray

3

경우 당신이 PC에서 응용 프로그램을 구축 할 수있어,하지만 당신이 암호를 기억하지 않습니다, 여기에 암호를 검색 할 수있는 작업은 다음과 같습니다

방법 1 :

build.gradle에 println MYAPP_RELEASE_KEY_PASSWORD다음과 같이 추가하십시오 .

signingConfigs {
    release {
        if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
            storeFile file(MYAPP_RELEASE_STORE_FILE)
            storePassword MYAPP_RELEASE_STORE_PASSWORD
            keyAlias MYAPP_RELEASE_KEY_ALIAS
            keyPassword MYAPP_RELEASE_KEY_PASSWORD
            println MYAPP_RELEASE_KEY_PASSWORD
        }
    }
}

그 후 실행 cd android && ./gradlew assembleRelease

방법 2 :

keytool -list -v -keystore your <.keystore file path>예를 들어 keytool -list -v -keystore ./app/my-app-key.keystore를 실행합니다 .

키 저장소 암호를 입력하라는 메시지가 표시됩니다. 여기서 Enter 키를 누르기 만하면됩니다. 별칭 이름에 매핑 된 것을 찾을 수 있습니다.

그런 다음 grep -rn "<your alias name>" .터미널에서 실행 하면 아래와 같이 signing.json 파일을 볼 수 있습니다.

./app/build/intermediates/signing_config/release/out/signing-config.json

파일에는 "mKeyPassword": "<your password>"키가있는 json 형식의 비밀번호가 있습니다.


3

Ionic에서는 여기에서 찾을 수있었습니다. /app/platforms/android/app/build/intermediates/signing_config/release/out/signing-config.json

아마도 이것은 누군가를 도울 것입니다. 건배.


정말 고마워!
Hugo Ramos

2

두 암호가 모두 다르면 Android 무차별 대입이 작동하지 않으므로 가장 좋은 옵션은 다음과 같은 파일을 찾는 것입니다.

log.idea

C : / users / 이름이 지정된 계정에서 Android 폴더의 메모장에서 lpg.idea 파일을 연 다음 검색 할 수 있습니다.

별명

메모장에서 찾기 옵션을 사용하면 암호와 별칭 및 별칭 암호가 표시되었음을 알 수 있습니다.


idea.log 여야합니다.
Felix

2

비밀번호를 찾았습니다.

C:\Users\{Username}\.AndroidStudio2.2\system\log\idea.txt

검색

Pandroid.injected.signing.store.password

2

아무것도 작동하지 않으면이 라인을 시도하십시오. .jks가 저장된 경로로 이동합니다. 명령 프롬프트에서이 명령을 실행하십시오. 암호를 묻고 무시하고 Enter를 누릅니다.

keytool -list -keystore sample.jks


2

이동 taskhistory.bin.gradle암호를 찾을 때까지 아래로 프로젝트 검색 암호 스크롤의 폴더


2

아무도 이것을 언급하지 않았다는 것이 놀랍습니다.하지만 Google Play 개발자 지원으로 이동하면 새 업로드 키를 만들기 위해 함께 작업 할 것입니다.

https://support.google.com/googleplay/android-developer/contact/otherbugs

문제를 작성했고 1 일 이내에 연락을 받았습니다.

업데이트 : 이메일 지침을 따른 후 새 업로드 키를 만들 수 있었고 며칠 후 활성화되었습니다! 문제 해결됨.


1

요약하면이 질문에 대한 3 개의 답이 있습니다 (수용된 답으로 답이 제공되지 않음).

  1. 로그가 손상되지 않은 경우 위 의 Georgi Koemdzhiev의 답변 에 따라 Android Studio 로그 파일에서 비밀번호를 찾을 수 있습니다 .

  2. ElDoRado1239Gueorgui Obregon의 답변 에 따라 .gradle 디렉토리의 'taskArtifacts.bin'파일에서 비밀번호를 검색 할 수 있습니다 . 최신 버전의 Gradle (2.10 이상)에서는 작동하지 않는 것 같습니다.

  3. 의 Srinivas Keerthiprakasam의 답변에 따라 AndroidKeystoreBrute를 사용하여 비밀번호를 추측하거나 무차별 대입하세요 .

이 세 가지 솔루션은 모두이 링크 에서 자세히 다룹니다 .


1

제 경우에는 올바른 암호를 저장했지만 별칭 이름이 잘못되었습니다. 그래서 잘못된 암호라고 생각했기 때문에 (ionic 패키지 사용) 별칭 이름을 가져 오기 위해이 명령을 사용했습니다.

keytool -list -v -keystore

그리고 키 스토어를 다시 사용할 수있었습니다!


1

C : \ Users \ admin \ AndroidStudioProjects \ TrumpetTVChannel2.gradle \ 2.14.1 \ taskArtifacts \ taskArtifacts.bin

먼저 새 키 저장소를 만듭니다 .... 그런 다음 메모장으로 taskArtifacts.bin을 열고 방금 입력 한 비밀번호를 찾습니다 .... 방금 입력 한 비밀번호 근처에있는 단어를 파악한 다음 근처에서이 단어를 검색 할 수 있습니다. 같은 파일에있는 암호 .... 암호를 알아낼 수 있습니다 ..... :)


1

솔루션 2018 : 비밀번호 또는 jks 파일이 누락 된 경우 새 키 저장소 파일로 앱에 서명합니다.

1) 명령 줄이있는 새 keystore.jks 파일 만들기 (Android 스튜디오 빌드 메뉴 아님)

keytool -genkeypair -alias upload -keyalg RSA -keysize 2048 -validity 9125 -keystore keystore.jks

Windows 예 : "C:\Program Files\Android\Android Studio\jre\bin\keytool.exe" -genkeypair -alias upload -keyalg RSA -keysize 2048 -validity 9125 -keystore "C:\keystore_new.jks"

2) 새 키 저장소에서 .pem 파일 생성

keytool -export -rfc -alias upload -file upload_certificate.pem -keystore keystore.jks

Windows 예 : "C:\Program Files\Android\Android Studio\jre\bin\keytool.exe" -export -rfc -alias upload -file "C:\upload_cert.pem" -keystore "C:\keystore_new.jks"

3)이 지원 양식을 사용하여 "키 저장소 문제"를 설정하고 첨부 파일과 함께 .pem 파일을 추가하십시오. https://support.google.com/googleplay/android-developer/contact/otherbugs

4) 12-48h 새 키 저장소가 활성화됩니다. 새 키 저장소로 서명 된 새 apk로 Playstore에서 앱 업데이트 : D


Google 앱 로그인 옵션을 선택한 사람들을위한 것 같아요?
Sumit Kumar

0

무차별 대입을 사용할 필요가없는 간단한 방법은 일반 텍스트 암호를 찾는 것입니다.

이동:

C:\Users\<your username>\AndroidStudioProjects\WhatsAppDP\.gradle\2.2.1\taskArtifacts

열다:

taskArtifacts.bin 

taskArtifacts.bin을 열면 암호화 된 것처럼 보일 수 있으므로 ".keyPassword"검색에 대해 몇 번 걱정하지 마십시오. 그러면 일반 텍스트로 된 암호를 찾을 수 있습니다. 다음과 유사 할 수 있습니다.

signingConfig.keyPassword¬í t <your password>Æù

이것이 도움이 되었기를 바랍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.