为了账号安全,请及时绑定邮箱和手机立即绑定

如何找出用于签署应用程序的密钥库?

如何找出用于签署应用程序的密钥库?

Helenr 2019-07-29 10:09:48
如何找出用于签署应用程序的密钥库?我有一个签名的应用程序和几个密钥库文件。我想更新应用程序,所以我需要找出使用了哪一个密钥。我如何匹配最初使用哪个密钥库来对我的机器上的各种密钥库进行签名?
查看完整描述

3 回答

?
蛊毒传说

TA贡献1895条经验 获得超3个赞

首先,解压缩APK并解压缩文件/META-INF/ANDROID_.RSA(此文件也可能是CERT.RSA,但应该只有一个.RSA文件)。

然后发出以下命令:

keytool -printcert -file ANDROID_.RSA

您将获得如下证书指纹:

     MD5:  B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB
     SHA1: 16:59:E7:E3:0C:AA:7A:0D:F2:0D:05:20:12:A8:85:0B:32:C5:4F:68
     Signature algorithm name: SHA1withRSA

然后再次使用keytool打印出签名密钥库的所有别名:

keytool -list -keystore my-signing-key.keystore

您将获得别名列表及其证书指纹:

android_key, Jan 23, 2010, PrivateKeyEntry,Certificate fingerprint (MD5): B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB

瞧!我们现在可以确定apk已经使用此密钥库签名,并使用别名'android_key'。

Keytool是Java的一部分,因此请确保您的PATH中包含Java安装目录。


查看完整回答
反对 回复 2019-07-29
?
慕沐林林

TA贡献2016条经验 获得超9个赞

您可以使用Java 7的密钥和证书管理工具keytool来检查密钥库或APK的签名,而无需提取任何文件。

APK的签名

keytool -list -printcert -jarfile app.apk

输出将显示APK文件的签名所有者/发布者以及MD5,SHA1和SHA256指纹app.apk

(请注意,该-jarfile参数是在Java 7中引入的; 有关更多详细信息,请参阅文档。)

密钥库的签名

keytool -list -v -keystore release.jks

输出将显示密钥库文件中的别名(条目)release.jks,以及证书指纹(MD5,SHA1和SHA256)。

如果APK和密钥库之间的SHA1指纹匹配,那么您可以放心,该应用程序已使用密钥签名。


查看完整回答
反对 回复 2019-07-29
  • 3 回答
  • 0 关注
  • 478 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信