2014-09-05 71 views
5

我正在从谷歌获得google play api key,它要求输入sha1指纹。我想知道什么是sha1指纹?我也想知道天气这个API密钥可以从另一台电脑/ PC使用?什么是sha1指纹?

+1

这是一个早期实施的“安全散列算法”:一可用于充当字节序列的“签名”的通道加密函数。这是不太可能的,2个不同的序列会产生相同的价值(虽然不是不可能,我想)http://en.wikipedia.org/wiki/SHA-1 – ne1410s 2014-09-05 11:45:11

回答

4

这是实施的标准'安全哈希算法' - a单向加密函数,可用作字节序列的“签名”。这是非常不可能的2个不同的字节序列会产生相同的值(虽然不是不可能)

http://en.wikipedia.org/wiki/SHA-1

注意,还有其他的,更强大的标准,在那里这些天如SHA256及更高版本。

+0

先生那么为什么我的钥匙不工作时,其他人编译我码? – 2014-09-08 06:16:59

+0

请包括您的代码,我们可以看看。我向自己证明,可以在多种技术(c#,java,javascript)上实现加密功能,这些技术都汇聚到相同的结果。 (无可否认,这不是SHA1,但原理保持不变)。可能有一些错误,缺少的参考,不同的配置或其他异常来解释您所看到的差异,但请张贴代码! – ne1410s 2014-09-08 07:15:33

3

他们要求对您的密钥存储文件的SHA1指纹(你使用这个签名的应用程序,然后才能推动他们到Google Play)

你可以这样做

keytool -exportcert -alias your-key-name -keystore /path/to/your/keystore/file -list -v 

得到您的钥匙您可以使用另一台计算机上的密钥存储文件,只需将它放在USB存储棒上或通过电子邮件发送给自己(请务必保持私密!重要!)并将您的IDE指向文件

3

如果您使用的是Eclipse IDE,让您的应用程式SHA1指纹最简单的方法:

  • 点击您的应用项目,在项目资源管理器(左侧)
  • 从顶部菜单,单击窗口 - >首选项在Preferences窗口
  • ,在左边,扩大Android和点击构建

你应该会看到以下信息:

  • 默认的调试密钥库路径
  • MD5指纹
  • SHA1指纹

您还可以添加其他的密钥库文件(例如,生产密钥库),以及该密钥库的价值也将被显示。

+0

先生那么为什么我的密钥不工作时,其他人编译我的代码? – 2014-09-08 06:16:29

+0

如果您希望其他人在签署apk时使用相同的密钥库,请尝试在此处阅读http://stackoverflow.com/questions/11446121/how-do-i-generate-a-keystore-for-google-play。 – nightfixed 2014-09-08 06:28:04

+0

但我只想在你的原始问题中调试/建立处理 – 2014-09-08 07:00:50

1

SHA - 表示安全哈希算法。

SHA-1是几个加密散列函数之一。 SHA-1最常用于验证文件是否未更改。这是通过在文件传输之前生成散列值(散列值是通过运行一种算法产生的,称为加密散列函数)来完成的,然后在到达目的地时再次生成散列值。 只有两个校验和相同时,传输的文件才可以被认为是真实的。

与SHA1哈希的文件可能看起来像:

752c14ea195c369bac3c3b7896975ee9fd15eeb7

对于您可以参考详细的解释: https://www.lifewire.com/what-is-sha-1-2626011