【问题标题】:How to handle a lost KeyStore password in Android?如何在 Android 中处理丢失的 KeyStore 密码?
【发布时间】:2011-08-30 16:40:54
【问题描述】:

我忘记了我的 Keystore 密码,我真的不知道该怎么做了(我不能或不会为此找任何借口)。我想更新我的应用程序,因为我刚刚修复了一个错误,但现在不可能了。如果我使用相同的密钥库但创建一个新密钥会怎样?我还能更新应用吗?如果无法更新,我该如何向用户提供有关更新版本的信息?

如果有人遇到过这样的问题或遇到过麻烦,您可以提供什么建议来帮助解决这种情况?幸运的是,它是一个免费的应用程序。

【问题讨论】:

  • Google+ 上的 Zach Klippenstein 遇到了和你一样的问题。可以关注here的话题。
  • 如果你使用的是 React Native,你可以在 gradle.properties 中找到它
  • 如果您想生成密钥对或使用它,您只需要密钥库密码,例如生成 CSR。

标签: android keystore


【解决方案1】:

我自己也遇到了这个问题——幸运的是,我能够在某个 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
.gradle/5.1.1/executionHistory/executionHistory.bin
.gradle/3.5/taskHistory/taskHistory.bin
.gradle/2.10/taskArtifacts/taskArtifacts.bin

然后搜索

storePassword

它以明文形式存在。一般来说,如果您确实记得至少部分密码,请尝试搜索包含此子字符串的文件,希望您能找到一些东西。

想把它扔在这里,也许它最终会对某人有所帮助。


编辑: 添加了来自 cmets 的新见解,只是为了更明显。 编辑 2: 添加了一些在 cmets 中报告的位置。

感谢 Vivek Bansal、Amar Ilindra 和 Uzbekjon 提供这些。

【讨论】:

  • 给这个人一枚勋章... 让其他人更快地找到密码:搜索“.keyPassword”几次,您将看到您的密码。非常感谢@EldoRado1239 :)
  • 试试 .storePassword
  • 如果你在 OSX/Linux 上,你可以运行它来轻松获取存储的密码条目:strings taskArtifacts.bin | grep storePassword -A1 顺便说一句,感谢 ElDoRado1239——你为我节省了很多时间。跨度>
  • 如果找不到上面的路径,试试这个..Project\.gradle\3.5\taskHistory\taskHistory.bin
  • 在 /.gradle/5.6.4/executionHistory/executionHistory.bin 里面我得到了signingConfig.signingConfigData.storePasswordHash。哈希不是明文密码。有什么办法可以获取密码吗?
【解决方案2】:

this link

很遗憾,但是当您丢失密钥库或密钥库的密码时,您的应用程序将成为孤立的。您唯一能做的就是使用新密钥将您的应用重新提交到市场。

始终备份您的密钥库并将密码写在安全的位置。

【讨论】:

  • 所以我能做的最好的就是上传另一个版本的应用程序并尝试从标题或以前的应用程序或类似的东西中给出描述。对吗?
  • 确实,只需取消发布您当前的应用程序并将其替换为具有相同标题和描述的新版本,并希望您的用户最终会找到它。这次一定要写下你的密码;)
  • 您有 3 次尝试才能做到正确。如果在第三次尝试时您错了,您需要关闭向导并重新打开它。即使您在第 4 次尝试输入正确的密码,它也会告诉您它是错误的。我通过尝试通过命令行运行 keytool 并观察其重试限制发现了这一点。
  • 您可以创建一个新的 jks 文件并要求 google 让您使用它签署您以前的应用程序
  • @lorenzo 检查this,也this 是主要文章,在第二个链接搜索“丢失”
【解决方案3】:

蛮力是你最好的选择!

这是一个帮助我的脚本:

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

您可以选择为它提供密码可能包含的单词列表,以便快速恢复(对我而言,它在

【讨论】:

  • 不幸的是,它对我不起作用。我给了一个单词列表,后来我发现它是按一定顺序排列的三个单词,但我必须自己弄清楚。不过感谢分享,很高兴它帮助了其他人
  • 它完美地为我工作!使用正确的字典只需 10 秒
  • 它可以恢复内部密钥的密码,但是如果我也丢失了密钥库本身的密码,我该怎么办? @kiruwka 说在his answer 中这不是问题...他真的是这个意思吗?
  • 那个工具是我的救命稻草。我依稀记得密码,但它的顺序不正确。提供单词列表在“
【解决方案4】:

如果提供了错误的密码,即使只是一次,它也会在下次尝试时不断提示:

密钥库被篡改或密码错误。

即使你提供了正确的。我试了几次,也许是某种保护。
关闭导出向导并使用正确的密码重新启动它,现在它可以工作了:)

【讨论】:

  • “关闭导出向导”是什么意思
  • 什么是导出向导?
【解决方案5】:

我花了两天时间终于找到了解决方案...

按照以下步骤操作:

  1. 进入项目
  2. 在 .gradle 中找到您的 gradle 版本文件夹,在我的情况下它是 4.1(参考图片)
  3. 展开4.1文件夹,然后在taskHistory文件夹中找到taskHistory.bin文件。
  4. 在 android studio 中打开 taskHistory.bin 文件。
  5. 搜索“.storePassword”.. 这样您就获得了密钥库密码。

这真的对我有用。

试试这个,祝你编码愉快!!!

【讨论】:

  • 使用Android 3.5.3,不幸的是.bin文件没有任何相关信息。
【解决方案6】:

解决方案 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 上运行 - 谢谢!
  • 没有名为signing_config的文件夹
  • 你让我很开心,你把我们从一个非常大的问题中解救了出来。
【解决方案7】:

在 MAC 启动控制台实用程序并向下滚动到 ~/Library/Logs -> AndroidStudio ->idea.log.1(或任何旧日志号) 然后我搜索了“keystore”,它应该出现在日志的某个地方。

原问题:link

【讨论】:

  • 这在客户那里救了我的命 - 所有其他选项都不可用,因为我们使用了一些 gulp 脚本和一个 cordova/phonegapp 应用程序
  • 我找不到它使用“keystore”但使用“key.password”
【解决方案8】:

其实,丢失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 的回答那样诉诸蛮力。

这种方法一直对我有用。

【讨论】:

  • 我试过了,它让你输入目的地的密码。如果你一直按回车,它会告诉你在 3 次尝试后再试一次。
  • @TheMuffinMan 抱歉,没有完全解决您的问题。您是否设法使用新的密钥库密码创建了新的密钥库?
  • 这给了我一个新的密钥库,但是当我尝试使用那个新的密钥库时,我收到了错误消息jarsigner: key associated with mykey-release not a private key。我错过了什么吗?
  • @phihag 我面临同样的问题。请问您找到解决方案了吗?
  • 没有密码是无法从旧的keystore获取私钥的。
【解决方案9】:

我觉得我需要将其作为答案,因为这不仅仅是在 cmets 中。 喜欢@ElDoRado1239 says in his answer(别忘了给他的答案点赞;)

  • 在我的情况下寻找..Project\.gradle\2.4\taskArtifacts\taskArtifacts.bin..Project\.gradle\2.2.1\taskArtifacts\taskArtifacts.bin 因为我使用gradle 2.2.1
  • 然后寻找storePassword 就像@Moxet Khan 在cmets 中所说的那样...在我的情况下是signingConfig.storePassword¬í t my.forgoten.password—signingConfig.keyAlias

希望能帮助别人!!!

【讨论】:

    【解决方案10】:

    幸运的是,我从我的 Android Studio 日志中找到了丢失的密码以及密钥库路径和别名。

    如果您正在运行基于 linux / Unix 的机器。

    导航到库日志目录

    cd ~/Library/Logs/
    

    如果您还记得您用于构建最后一个版本 APK 的 android studio 版本,请在其中。导航到该目录

    例如: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 用户有所帮助

    【讨论】:

    • 我认为这在 AndroidStudio3.0 上不起作用,所有信息都显示为 *******,密钥库密码和密钥密码的长度相同。
    • 这正是我找到密码的地方,感谢您的帖子。我还编辑了上面的答案。这两个位置是救星,我希望将来 Android Studio 中的 Keystore Tool 会警告用户保存密码,因为他们需要在一年或 2 年后再次发布。
    【解决方案11】:

    可能有点晚了,但它肯定会帮助某人 如果您记得某些内容,则可以搜索密码,否则请尝试搜索

    signingConfig.storePassword

    如果你忘记了密钥别名,你也可以在这里找到 搜索类似 signingConfig.keyAlias

    Project.gradle\3.3\taskArtifacts\taskArtifacts.bin

    希望对某人有所帮助

    【讨论】:

      【解决方案12】:

      获取密钥库密码的最简单方法

      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}
      

      希望对您有所帮助。

      【讨论】:

      • 这实际上是您尝试的最后一个密码,可能是用户尝试了不同的密码。然后他们会得到错误的密码
      • 它只是最后一次生成的 APK 密码,并且在你生成新的 apk 时,json 文件一直被更改
      • 这拯救了我的一天!
      • 你真的救了我!
      【解决方案13】:

      花了将近一天的时间研究在 Android Studio 中恢复丢失的密钥库密码的可能选项。我发现了以下 4 种可能的方法:

      1. 使用AndroidKeystoreBrute 找回您的密码。当您部分忘记密码时,此方法非常有用,这意味着您的脑海中仍有一些密码提示。

      2. 如果您之前使用同一台机器发布了应用程序(您找到了密钥库密码),您也可以通过 Android Studio 日志文件检索它。参考以下目录:

        Mac OSX

        ~/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 首选项:

        Mac OSX

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

        Linux(可能的位置)

        /home/user_name/AndroidStudio

        Windows(可能的位置)

        c:\user\username\.AndroidStudio

        如果您有旧版 Android Studio IDE,请使用旧版 Android Studio IDE,或者将旧版 IDE 的首选项导入到新版 IDE 中,并将密钥库文件放在与您上次签署时相同的路径中并保存密码。

        以这种方式打开项目并尝试 Build->Generate Signed APK 并从旧位置选择密钥库文件。它将自动检索密码并继续生成签名的 APK 以供发布。

        一旦发布 APK 成功生成,您可以按照前面提到的选项 2 从您的日志文件中检查您最近生成的发布 APK 的密码。

      【讨论】:

      • 在日志中搜索很有帮助。谢谢你,你救了我的平静
      • 我找到了idea.log.1。怎么打开?
      • 你们是救生员。在 idea.log.12 中找到我的 - 只需以 txt 格式打开即可!
      【解决方案14】:

      对于可能遇到此问题的任何其他人,我想分享一个答案,您或浏览本文的其他人(如我自己)可能会遇到这种情况。

      我正在使用 Eclipse 并在其中为我的 1.0 版本创建了我的密钥库。快进 3 个月,我想将其更新到 1.1。当我在 Eclipse 中选择 Export... 并选择该密钥库时,我记得的所有密码都不起作用。每次它说“密钥库被篡改或密码不正确。” 到了我准备在它上面运行暴力程序的地步,只要我能忍受(一周左右) ) 来尝试让它工作。

      幸运的是,我在 Eclipse 之外签署了我未签名的 .apk 文件。瞧——它奏效了!我的密码一直都是正确的! 我不知道为什么,但是即使我的密码正确,通过“导出”菜单在 Eclipse 中签名也会报告错误。

      因此,如果您遇到此错误,请按照以下步骤(取自 Android documentation)来帮助您为市场做好准备。

      注意:从 Eclipse 获取未签名的 apk:右键单击项目 > Android 工具 > 导出未签名的应用程序

      1. 使用密钥库签署未签名的 apk 文件

        一个。打开管理员 cmd 提示符并转到“c:\Program Files\Java\jdk1.6.0_25\bin”或您拥有的任何 java 版本(您已复制未签名的 apk 文件和密钥库)

        b.在 cmd 提示符下,密钥库文件和未签名的 apk 在同一目录中,键入以下命令:jarsigner -keystore mykeystorename.keystore -verbose unsigned.apk myaliasnamefromkeystore

        c。它会说:“输入密钥库的密码:”。输入它并按回车键。

        d。 ===> 成功是这样的:

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

        e。未签名的版本被覆盖,因此您签名的 apk 文件现在与未签名的文件名相同

      2. 使用 ZipAlign 压缩签名的 apk 文件以便在市场上分发

        一个。打开 admin cmd 提示符并转到“c:\AndroidSDK\tools”或安装 Android SDK 的任何位置

        b.输入这个命令:zipalign -v 4 signed.apk signedaligned.apk

        c。 ===> 成功是这样的:

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

        d。签名和对齐的文件位于signedaligned.apk(您在上一个命令中指定的文件名)

      ========> 准备提交到市场

      【讨论】:

      • 您收到密码不正确的错误的原因是隐式设置的keyalg/sigalg/digestalg错误。不同版本的 Java 对这些值有不同的默认值。
      • 当 eclipse 拒绝我的密码时,我非常紧张,但是当我尝试你的方式时,它起作用了,谢谢!
      【解决方案15】:

      我很惊讶没有人提到这一点,但您可以访问 Google Play 开发者支持,他们将与您一起创建新的上传密钥:

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

      我填写了一个问题,他们在 1 天内与我联系。

      更新:按照他们的电子邮件说明,我能够创建一个新的上传密钥,并在几天后启用!问题解决了。

      【讨论】:

      • 您始终可以仅使用 keytool 创建新的密钥库和新的密钥对,更不用说 Google Play。不回答所提出的问题。
      • 您始终可以创建新的密钥库和密钥对,但除非您与 Google Play 交谈,否则您无法为您的应用替换它们。这比用新名称提交新应用要好得多,最佳答案建议这样做。
      • 当然,唯一的条件是您在上传第一个 apk 时使用 google play 启用了 Play App Signing。否则这将无法完成这项工作
      • 暴力破解永远不是一个好主意,特别是如果您真的选择了一个好的密码。最重要的是。不知道哪个更疯狂,用网络上的外国软件破解自己的密码,还是不限时间暴力破解。
      【解决方案16】:

      首先下载AndroidKeystoreBrute_v1.05.jar,然后按照给定的图片。

      准备一个wordlistfile,如(wordlist.txt),在该文件中给出你的提示

      密码提示:

      用户

      用户

      密码

      密码

      pa55word

      密码

      @

      *

      #

      $

      &

      1

      2

      123

      789

      你会得到你的密码。

      【讨论】:

      • 您好,我没有得到结果。请帮忙
      • @NimishaV 你面临什么问题
      • 我的 android studio 记住了我的 jks 密码。Android studio 成功构建了新版本。但是当我更换笔记本电脑时它不记得了,我忘记了 jks 密码。请帮助我如何恢复
      【解决方案17】:

      将其添加为另一种可能性。答案可能就在您的眼皮底下——如果您在过去某个时间点碰巧指定了签名配置,则在您应用的 build.gradle 文件中:

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

      你觉得幸运吗?!

      【讨论】:

        【解决方案18】:

        我同时遇到了同样的问题。 即使通过 Google Play 进行应用签名,丢失密钥库或密码也不是什么大问题,但作为开发人员,我们更愿意更改密码并使用生成的密钥库文件,而无需等待几天谷歌来处理它。 (要使用 google 处理此问题,请使用此 link 提出请求) 自己处理这个问题, 首先从这个link 下载两个.java 文件。 然后通过javac ChangePassword.java 命令编译ChangePassword.java。 然后你可以运行之后

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

        oldKeystoreFileName.keystore 更改为当前密钥库文件的路径/名称,将 newKeystoreFileName.keystore 更改为新生成的新密钥库文件的路径/名称。 这将促进你

        输入密钥库密码:

        。只需输入您喜欢的任何内容 :) 无需是丢失的原始密码。然后用 * 输入新密码

        新的密钥库密码:

        • 瞧,就是这样。这不会更改您的密钥库的校验和,也不会在应用签名或上传到 play.google 事件时出现任何问题。

        【讨论】:

        • @SIW,我通过使用旧的带有 ChangePassword 的密钥库创建新的密钥库来更改我的密码。当我想签名时,我得到了与我的别名关联的密钥而不是私钥
        • 我尝试这个时弹出无法恢复密钥错误
        【解决方案19】:

        解决方案 2018:如果您缺少密码或 jks 文件,请使用新的密钥库文件为应用程序签名。

        1) 使用命令行创建新的 keystore.jks 文件(不是 android studio 构建菜单)

        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-48 小时你启用了新的密钥库。使用使用新密钥库签名的新 apk 更新您在 Playstore 上的应用:D

        【讨论】:

        • 我认为它适用于那些选择谷歌应用登录选项的人?
        【解决方案20】:

        打开taskHistory.bin并搜索storePassword

        【讨论】:

        • 在该文件上没有得到与“storePassword”相关的任何内容
        【解决方案21】:

        如果您能够从 PC 构建应用,但您不记得密码,您可以执行以下操作来找回密码:

        方法一:

        在您的 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 &amp;&amp; ./gradlew assembleRelease

        方法二:

        运行keytool -list -v -keystore your &lt;.keystore file path&gt; 例如keytool -list -v -keystore ./app/my-app-key.keystore.

        它会要求您输入密钥库密码:只需在此处按 enter 键。并且您将能够找到映射到别名的名称:

        然后,在您的终端中运行grep -rn "&lt;your alias name&gt;" .,您将能够看到您的signing.json 文件,如下所示:

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

        该文件将包含您的 json 格式密码,密钥为“mKeyPassword”:“”

        【讨论】:

          【解决方案22】:

          在 Ionic 我可以在这里找到它:/app/platforms/android/app/build/intermediates/signing_config/release/out/signing-config.json

          也许这会对某人有所帮助。干杯。

          【讨论】:

          • 非常感谢!
          【解决方案23】:

          只是为了简化这里的事情,这个解决方案在 2020 年适用于 gradle 版本:5.4.1

          打开文件:project\.gradle\5.4.1\executionHistory.bin

          密钥库密码:

          搜索“storePassword”文本

          密钥密码:

          搜索“keyAlias”文本

          搜索后检查同一行或下一行的密码。

          【讨论】:

          • 就我而言:project\gradle\4.1\taskHistory\taskHistory.bin 为我完成了这项工作。谢谢。
          • 这是在 Gradle 6.5 中散列的
          【解决方案24】:

          如果您的两个密码不同,Android 蛮力将不起作用,因此最好的选择可能是尝试查找名为

          的文件

          log.idea

          在你的 C:/users/你的命名帐户 那么您可能会发现在 android 文件夹中在记事本中打开该文件 lpg.idea 然后搜索

          别名

          使用记事本中的查找选项,您会发现密码和别名以及别名密码已显示在那里

          【讨论】:

          • 应该是idea.log。
          【解决方案25】:

          我在

          中找到了密码
          C:\Users\{Username}\.AndroidStudio2.2\system\log\idea.txt
          

          搜索

          Pandroid.injected.signing.store.password
          

          【讨论】:

            【解决方案26】:

            转到项目的.gradle文件夹中的taskhistory.bin搜索密码向下滚动直到找到密码

            【讨论】:

              【解决方案27】:

              总结一下这个问题有3个答案(接受的答案没有给出解决方案):

              1. 如果您的日志完好无损,那么您可以根据上述Georgi Koemdzhiev's 答案在 Android Studio 日志文件中找到密码。

              2. 您可以根据上面的ElDoRado1239'sGueorgui Obregon's 答案从 .gradle 目录中的“taskArtifacts.bin”文件中检索密码。这似乎不适用于较新版本的 Gradle(2.10 及更高版本)。

              3. 按照上述Srinivas Keerthiprakasam's 答案,使用 AndroidKeystoreBrute 猜测或暴力破解您的密码。

              link 详细介绍了所有这 3 个解决方案。

              【讨论】:

                【解决方案28】:

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

                第一次尝试创建新的密钥库....然后用记事本打开 taskArtifacts.bin 并查找您刚刚给出的密码....您将能够找出您刚刚给出的密码附近的单词然后搜索这些在同一文件中靠近您的密码的单词....您将能够找出密码.....:)

                【讨论】:

                  【解决方案29】:

                  如果没有任何效果,请尝试这些行。移动到存储 .jks 的路径。在命令提示符下运行此命令。它会要求输入密码,忽略它并按回车键。

                  keytool -list -keystore sample.jks

                  【讨论】:

                  • 这不提供密码或存储在密钥库中的任何密钥对,这就是问题所在。
                  【解决方案30】:

                  我知道这个问题已经AGES老了,但我看到很多答案基本上都说蛮力是要走的路,这根本不是真的,因为开发人员通常有一个又长又长的密码,这不能轻易被暴力破解,也需要几天时间,你必须让你的电脑 24/7 运行,所以我的解决方案很简单 - 联系支持,他们甚至会为你生成一个新密钥,它是您将获得最快的解决方案。

                  【讨论】:

                    猜你喜欢
                    • 2012-02-11
                    • 1970-01-01
                    • 1970-01-01
                    • 2021-10-20
                    • 2012-07-17
                    • 1970-01-01
                    • 2023-03-31
                    • 1970-01-01
                    • 2014-12-07
                    相关资源
                    最近更新 更多