【问题标题】:How to handle a forgotten keystore password in Ionic development?如何在 Ionic 开发中处理忘记的密钥库密码?
【发布时间】:2017-12-05 01:33:17
【问题描述】:

使用 ionic 应用程序我发布了我的第一个版本。所以它的下载量超过 10,000 次,用户正在使用我的应用程序。现在我想用我的应用发布一些更新。所以我释放了未签名的 apk,但是当我执行这一步时:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk alias_name

它正在询问my-release-key.keystore 的密码,但我忘记了密码。请给我一些解决方案。

我尝试创建新的

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

但是当我发布更新并在应用商店上传时,我收到错误最后更新证书与此版本不匹配。当我谷歌它时,这是因为新生成的my-release-key.keystore

【问题讨论】:

  • 您还记得您的密钥库中有多少个字母,您会使用哪种字母/大小写/符号?也许你可以写一个脚本来暴力搜索它。
  • @halfer 是的,我使用了一些我的名字和一些我知道的号码......但我忘记了我的密码......你能帮我找回那个吗??
  • 好吧,我给你一些线索来帮助你自己做。例如,您可以编写一个脚本(使用任何编程语言)来运行上述二进制文件之一来进行暴力搜索吗?如果您可以明智地限制搜索条件,那么也许您可以找到它。例如,如果您知道您的名字是第一个 X 字母,您可能只需要尝试几百种组合。如果你知道它只是小写,那也有帮助。如果你名字后面的字母只是数字,那会有帮助。你明白我的意思吗?

标签: ionic-framework certificate keystore


【解决方案1】:

根据这个 SO questions 接受的答案,没有办法找回丢失的密钥库密码。

但在最近的一些不被接受的答案中,人们声称已经找到了找回丢失的密钥库密码的解决方案。也许你想看看那些?

如果您没有保留丢失的密码,您唯一能做的就是使用新创建的密钥库重新提交(取消发布当前应用并发布具有相同标题和描述的新应用)您的应用。如果是这种情况,请务必将您的密码存储在安全的位置:)

【讨论】:

  • 重新发布意味着什么?...我是否需要取消发布我的应用程序,并且使用相同的名称和相同的包名我可以再次发布它...
  • 所以它会是用户的更新或新应用程序......因为我的应用程序超过 10,000 人使用......所以我如何在没有更新的情况下发布新应用程序?跨度>
  • 我认为您只需要希望您的用户找到回到新应用程序的方法。如链接到 SO 问题的 cmets 中所述。我知道这是一个非常令人头疼的问题,因此请查看最近的答案,看看您是否找到了适合您的解决方案。
【解决方案2】:

有时您可以在以下临时 Gradle 文件中找到密码:

<YourProjectRoot>\platforms\Android\.gradle\<version>\taskArtifacts\taskArtifacts.bin

使用纯文本编辑器打开该文件并搜索“密码”。您应该在那里以纯文本形式看到它。请注意,它周围可能有一些特殊字符,但您可能会认出您最初用于密码的字符。

我希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 2015-12-09
    • 1970-01-01
    • 2017-07-05
    • 2015-01-27
    • 2012-02-12
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    相关资源
    最近更新 更多