2013-03-04 665 views
7

为了获得我的Android项目的密钥,Google需要SHA1指纹。 提出了这样的命令:keytool的列表-V-密钥库mystore.keystore如何从p12证书中获取SHA1指纹?

我通过不同的选择去了,但总是在错误非法选项:文件 密钥工具:-list [选项] ...

对于例如我的命令:

C:\Program Files (x86)\Java\jre7\bin>keytool -storepass mypass -list -v -keystore C:\Program Files (x86)\Java\jre7\bin\android.p12 

如果我在根(c :)中设置p12文件,那么我得到另一个错误 - 无效的密钥库格式。

回答

9

对于p12格式(PKCS12),使用选项-storetype PKCS12

例如:

keytool -list -v -keystore mykeystore.p12 -storetype PKCS12 -storepass 123456 

对于密钥库/证书检查&操纵我建议GUI工具Portecle(原名:KeyToolGUI)。 Here是方便的Windows安装程序。

+0

非常感谢,Pawel。它工作正常。 – Astraport 2013-03-04 12:53:06

+0

通过终端在Mac上运行。 ;) – crooksy88 2014-10-26 06:49:13

9

这也可以使用OpenSSL完成:

openssl pkcs12 -in <my pkcs12 file>.p12 -nodes -passin pass:<passphrase, or blank> |openssl x509 -noout -fingerprint 
+0

我会在-fingerprint之后添加-md5。旁边的作品确定。 – Piohen 2014-07-07 20:37:12

0

如果您正在使用的Android 工作室

signingReport

SHA1在消息日志所示:您可以通过任务摇篮得到快速度的SHA1证书指纹调试,释放... ...所有生成类型!

Android插件(在gradle应用程序中配置)创建一个调试模式默认为。 文件路由到密钥库:首页/ .android/debug.keystore

我建议将debug.keystore附加到build.gradle。要执行此操作,请将文件debug.keystore放到应用程序文件夹中。

额外:如果您想创建发布版本,请将文件release.keystore放到应用程序文件夹中。 (这个例子使用相同的debug.keystore)

相关问题