错误:无法从存储读取密钥:。。。生成已签名的APK时无法恢复Android Studio上的密钥

错误:无法从存储读取密钥:。。。生成已签名的APK时无法恢复Android Studio上的密钥,android,android-studio,apk,alias,keystore,Android,Android Studio,Apk,Alias,Keystore,我正在尝试为我的新游戏生成发布apk。即使我在3天前更新了我的另一个应用程序,keystore也没有任何问题。我绝对相信我记得我的密码是正确的。因为当我给出错误的密码时,它会说你的密码或用户名不正确 以下是我正在做的: 下面是我得到的: 请帮帮我,我做错了什么?Android studio在2天前更新。你认为这会导致这个问题吗?我该怎么办?任何帮助都将不胜感激 实际上,在我发布这个问题之前,我已经读过这篇文章了。我试图按照他在回答中所说的去做,尽管我遇到了这样的提示:“文件被篡改或密码不正确

我正在尝试为我的新游戏生成发布apk。即使我在3天前更新了我的另一个应用程序,keystore也没有任何问题。我绝对相信我记得我的密码是正确的。因为当我给出错误的密码时,它会说你的密码或用户名不正确

以下是我正在做的:

下面是我得到的:

请帮帮我,我做错了什么?Android studio在2天前更新。你认为这会导致这个问题吗?我该怎么办?任何帮助都将不胜感激


实际上,在我发布这个问题之前,我已经读过这篇文章了。我试图按照他在回答中所说的去做,尽管我遇到了这样的提示:“文件被篡改或密码不正确”。现在我知道密码是绝对正确的。恐怕我再也无法更新我的应用程序了。

我建议您在此处使用此工具对别名密码运行智能单词列表攻击:

  • 使用上面的URL下载此项目的JAR文件

  • 创建一个名为wordlist.txt的文本文件,其中包含构成密码的单词和字符串,按您认为的顺序显示。将您认为是密码一部分的每个字符串放在单独的行中。不要在每个字符串之间留下空行。在此过程中,您可能需要多次修改wordlist.txt以破解密码。你也可以尝试所有你认为是你的密码,你可能想到的变化

  • 将wordlist.txt保存到与JAR文件相同的文件夹中

  • 从命令行导航到包含wordlist.txt和JAR文件的目录

  • 在命令行中键入:java-jar androidkeysterebrute_v1.06.jar-k“keystore.jks的完整路径”-d wordlist.txt以查看可用选项。您可能希望尝试使用不同于我在测试中使用的选项

  • 运行java-jarandroidkeysterebrute_v1.06.jar-m3-k“keystore.jks的完整路径”-d wordlist.txt

  • -m选项指定用于破解密码的方法: 1=暴力攻击(可能需要数周、数月或更长时间) 2=字典攻击(密码必须在字典中) 3=智能单词列表攻击(您在wordlist.txt中指定的字符串)

    我在wordlist.txt中对我自己的别名密码进行了多次测试,并使用了许多不同的变体,它要么在不到1秒的时间内破解了我的密码,要么根本找不到密码。由于您认为您的别名密码与密钥存储密码相同,因此此过程将帮助您查找这两个密码

    当然我知道我的密码,所以我知道输入什么字符串才有效。但是,由于您相当肯定自己记住了密码,因此如果智能单词列表攻击实际上与您所记住的密码非常接近,那么它应该能够快速找到您的密码

    祝你好运


    将来,您可能希望将密码存储在密码管理器中,并始终复制和粘贴密码。人类的记忆力对于记住一般的想法是非常好的,而对于记住确切的项目或细节则完全不可靠。

    经过一段时间,我得到了解决方案


    您的“密钥存储密码”和“密钥密码”必须相同。

    在@joshgoldeneagle回复后获得成功。 提示只给了我别名passowrd,但使用-w特性,我得到了一个密钥,其中两个密码都设置为恢复的密码

    “-w使用与密钥相同的密码将证书保存在新密钥库中”


    java-jar androidkeysterebrute_v1.06.jar-m3-k“keystore.jks的完整路径”-d wordlist.txt-w

    可能与@androidmechanical重复在我发布这个问题之前,我实际上已经阅读了这个主题。我试着按照他在回答中所说的去做,尽管我遇到了这样的提示:“文件或密码不正确”。现在我知道密码是绝对正确的。恐怕我再也无法更新我的应用程序了。密钥库密码和密钥密码应该是相同的:)使用keytool更改两个密码更改密钥库密码
    keytool-storepasswd-newnewpassword-KeyStore KeyStore.jks
    Change Alias Key password
    keytool-keypasswd-Alias MyKeyAlias-newnewpassword-keystore keystore.jks
    你有密钥备份吗?@IntelliJAmiya我已经试过了。不幸的是,结果是相同的“文件或密码不正确”首先感谢您的回答。后来,在我尝试了你的方法后,效果很好。它给了我和我想的完全一样的密码。据我所知,这两个密码必须相同。否则就不行了。我相信他们应该在Android Studio中指出这一点。两个密码的开头是相同的,但在别名的末尾显示为alias。例如,它类似于:pwpw表示密钥库pwalias表示别名。然后我尝试用-keytool更改它们,但仍然不好。@joshgoldeneagle在线程“main”java.lang.UnsupportedClassVersionError:AndroidKeystrubrute/AndroidKeystrubrute:Unsupported major.minor version 52.0中对我无效