Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如果有人反编译您的Android应用程序,他们可以看到签名证书吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果某人反编译您的.apk文件,他们可以以某种方式查看您签名的证书和/或SHA1吗?

我问的原因是我理解在Android代码中将类似秘密密钥的东西放到restful API中是不明智的,因为有人可以反编译.apk然后以纯文本格式查看密钥.这让我想到了 – 其他敏感信息可能会反编译显示出什么?特别是因为某些API使用您应用的SHA1来验证您的应用,并确保只允许它调用API方法.

解决方法

每个APK都在构建过程中签名.在调试版本中,使用调试密钥进行签名并登录发布模式,您必须使用 setup keys.

一般来说,签名允许一个人验证文档的来源,在这种情况下是APK.它通常有以下步骤:

>您计算要保护的文档的哈希值.
>您使用私钥加密哈希.
>您在其中嵌入了文档的哈希值(在Android的情况下,它是Meta-INF / CERT.SF)
>您将文档与公钥一起分发(在Android的情况下,它是Meta-INF / CERT.RSA)

文档的接收者可以重新计算文档的散列,并通过使用公钥解密签名,将其与文档创建时计算的散列进行匹配.

哈希值通常是SHA-1哈希值.这并不是秘密,因为它需要验证文档的真实性.

不幸的是,这种机制不能用来保护任何秘密.签名用于证明数据的真实性,而不是用于保护秘密.

就保护REST API的密钥而言,将密钥保存在APK中肯定不是一个好主意,因为反编译器可以查找它.

使用code obfuscators可以为您提供一定程度的保护,防止反编译器.

可以应用的另一种技术如下:

>为应用程序提供登录工具.>成功登录后,返回API密钥作为对app的响应.确保您使用https作为登录API>将API密钥保存在内存中,并在需要时使用它.

大佬总结

以上是大佬教程为你收集整理的如果有人反编译您的Android应用程序,他们可以看到签名证书吗?全部内容,希望文章能够帮你解决如果有人反编译您的Android应用程序,他们可以看到签名证书吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。