首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android apk如何使用私钥公钥?

android apk如何使用私钥公钥?
EN

Stack Overflow用户
提问于 2022-10-11 14:43:57
回答 2查看 30关注 0票数 0

根据我的理解,android签名步骤是确保用户要安装的apk是不修改的。apk是由一个私钥签名的,但是根据我的理解,公钥就写在同一个apk文件中。我想知道用户如何信任公钥并使用它解密和验证apk?因为我是一个黑客,我可以简单地获取原始的apk,修改它的内容,用我自己的私钥加密它,并在其中插入我自己的公钥,这样当用户得到这个被黑客攻击的apk时,他/她仍然应该能够通过验证过程,因为apk使用的是有效的私钥和公钥对,这是我的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-10-11 15:11:39

APK签名适用于应用程序更新方案。您只能使用与最初安装的应用程序相同的密钥签名APK来更新应用程序。

修改APK并使用另一个密钥对其进行签名当然是可能的,而且确实发生了。一个障碍是发行版:欺骗用户安装修改后的版本。应用程序存储有检测此类应用程序修改或其他恶意应用程序的机制,默认平台安全设置不允许从不受信任的来源安装应用程序。这些当然不是100%的效率,坏的应用程序确实会被安装。

票数 2
EN

Stack Overflow用户

发布于 2022-10-11 15:48:46

除了@laalto所说的:签名还用于签名受保护的权限。如果您有几个应用程序,并且它们使用Android意图进行通信(例如,一个应用程序在另一个应用程序中使用服务),并且意图目标(服务、接收者、内容提供者)受到私有权限的保护,并且使用“签名”的保护级别声明权限,那么Android只会在两个应用程序使用相同的密钥进行签名时才授予权限。这就是潜在的黑客将被挫败的地方;如果他们用自己的密钥重新签署APK,Android会注意到这一点,并拒绝访问。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74030031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档