如何从签名的apk获取密钥库文件

时间:2016-04-01 05:52:09

标签: android apk fingerprint android-keystore

我已经使用默认的debug.keystore密钥签署了我的apk。但不幸的是我的系统被破坏了,现在我需要从已签名的apk获取密钥存储区。

用新apk替换旧apk。

我有MD5,SHA指纹。但我可以将它们作为密钥库来签署apk。

任何建议都将不胜感激。谢谢你。

2 个答案:

答案 0 :(得分:5)

unzip -p Name-of-apk.apk META-INF/CERT.RSA | keytool -printcert

是我使用的。

它生成所有者,发行人,序列号,有效期,证书指纹,签名算法和版本等信息。

答案 1 :(得分:-1)

首先,解压缩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,2010年1月23日,PrivateKeyEntry, 证书指纹(MD5):B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB 瞧!我们现在可以确定apk已经使用此密钥库签名,并使用别名' android_key&#39 ;.

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