问题
密钥库及其密码用于对应用程序进行签名,然后Android使用该应用程序来识别开发人员。如果泄露,有人可以代表我们更新相关的应用程序。即使这个人没有权限访问我们的playstore帐户,他们仍然可以在其他地方发布它。
我们随处可见,“永远不会丢失”,“永远不会泄露”,等等。但如果我做到了呢?当密钥库和密码泄露时,我找不到需要遵循的步骤,这样我就可以保护我们的用户和应用程序。
问题
即使我用另一个appid发布相同的应用程序,我如何保护仍在使用旧应用程序的用户?这里有什么最佳实践吗?
发布于 2016-09-26 22:32:58
不幸的是,似乎没有一种很好的方法来将现有的应用程序迁移到新的签名密钥。这可能是最好的,因为最佳实践仍然是a)拥有一个强密钥,b)尽可能地保留您的私有发布密钥。我发现this article概述了一种从1024位密钥迁移到4096位密钥的可行(但对用户不友好的方式),这似乎适合您的用例。由于您仍然拥有被攻破的应用程序的有效签名密钥,因此您可以尝试通过更新将它们从该应用程序迁移出去。
使用新密钥签署App2,RSA4096<代码>H110将方法添加到App2,用于从App1接收用户数据,包括旧签名密钥RSA1024的签名pin,用于将旧的签名密钥RSA1024用于将来自App1的应用程序存储H213H114提示用户安装App2
发布于 2016-10-05 02:41:18
不幸的是,这个问题没有简单的答案。如上所述,最通用的解决方案是创建一个新的应用程序,告诉用户切换,然后迁移数据。
然而,在Lollipop+上,还有另一种可能的解决方案。您可以使用升级密钥就地更改应用程序的签名密钥,从而省去创建第二个应用程序或进行数据迁移的麻烦。不幸的是,Play目前还不支持这一点,所以它只是一个非市场应用程序的选择,而Kitkat上的用户就不走运了。
https://stackoverflow.com/questions/39656359
复制相似问题