大佬教程收集整理的这篇文章主要介绍了如果有人反编译您的Android应用程序,他们可以看到签名证书吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我问的原因是我理解在Android代码中将类似秘密密钥的东西放到restful API中是不明智的,因为有人可以反编译.apk然后以纯文本格式查看密钥.这让我想到了 – 其他敏感信息可能会反编译显示出什么?特别是因为某些API使用您应用的SHA1来验证您的应用,并确保只允许它调用API方法.
一般来说,签名允许一个人验证文档的来源,在这种情况下是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,请注明来意。