如何从debug.keystore文件中获取MD5?

时间:2011-03-10 16:29:24

标签: android

我使用一些命令从debug.keystore文件中获取MD5私钥,但实际上我得到的是SHA1私钥而不是MD5。我不知道如何获得MD5。

这是我使用的命令。

keytool -list -alias androiddebugkey -keystore (path_to_debug_keystore).keystore -storepass android -keypass android

11 个答案:

答案 0 :(得分:42)

尝试在命令中添加 -v 。然后,您将在 MD5 SHA1 SHA256 中获得指纹。 Google API注册应接受MD5。 =)

答案 1 :(得分:27)

当我这样做时,我使用了它。

keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android -v

看起来您的密钥库文件不正确。

答案 2 :(得分:20)

你不需要降级你的jdk!

您应该按照建议的那样在keytool命令中添加'-v'。

keytool -list -v -keystore ~/.android/debug.keystore

这是因为您使用的是jdk7,与jdk6不同,默认情况下不会打印MD5证书指纹。

android documentation没有提到这个(按照过期日期)

答案 3 :(得分:5)

谢谢大家。现在我拿到了MD5私钥。我用的是JDK7。 供您参考,

C:\Program Files\Java\jdk1.7.0\bin>keytool.exe -list -v -keystore "C:\Documents
and Settings\Administrator\.android\debug.keystore" -storepass android -keypass
android

答案 4 :(得分:3)

你有正确的sintaxis,请确保你的密钥库文件位于哪里......

这是我的例子:

keytool -list -alias androiddebugkey -keystore "C:\Documents and Settings\jorgesys\.android\debug.keystore" -storepass android -keypass android

,结果必须是......

androiddebugkey, 25/09/2010, PrivateKeyEntry,
Certificate fingerprint (MD5):
32:46:AA:56:D9:71:8B:2A:0B:34:A1:B6:96:1E:87:59

如果您不记得您的用户和密码,您将创建另一个密钥库...

keytool -genkey -v -keystore "C:\android\gruporeforma.keystore" -alias gruporeforma -keyalg RSA -validity 10000

答案 5 :(得分:2)

这绝对会对您有所帮助。请参阅此截图.....

enter image description here

答案 6 :(得分:2)

如果您使用的是Eclipse或ADT,可以转到偏好设置 - > Android - >在Build中,您将看到调试密钥库MD5和SHA1指纹。

答案 7 :(得分:2)

确保您目前位于终端的jdk/bin

对于Linux或OS X,打开终端窗口并输入以下内容:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

对于Windows Vista和Windows 7,请运行:

keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

如果您在上述步骤中取得成功,您将获得:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3

答案 8 :(得分:1)

我有同样的问题使用java jdk6而不是jdk7 ...为我工作

答案 9 :(得分:0)

谢谢大家。我可以生成我的MD5私钥。 我知道一些问题。如果我使用java版本7,我将获得SHA1但是当我降级java版本如jdk1.6时,我也会得到MD5。

答案 10 :(得分:0)

我在链接中看到了这个答案:

How to get 'MD5' instance from keystore instead of 'SHA' ?

在其他答案中,原因是使用命令行来获取SHAMD5,但是程序可以精心设计以从签名中显式获取MD5实例。在上述情况下,您指定的是SHA,因此您只会得到SHA

快乐编码:-)