首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何防止使用泄露的密钥库和密码?

如何防止使用泄露的密钥库和密码?
EN

Stack Overflow用户
提问于 2016-09-23 16:38:06
回答 2查看 953关注 0票数 22

问题

密钥库及其密码用于对应用程序进行签名,然后Android使用该应用程序来识别开发人员。如果泄露,有人可以代表我们更新相关的应用程序。即使这个人没有权限访问我们的playstore帐户,他们仍然可以在其他地方发布它。

我们随处可见,“永远不会丢失”,“永远不会泄露”,等等。但如果我做到了呢?当密钥库和密码泄露时,我找不到需要遵循的步骤,这样我就可以保护我们的用户和应用程序。

问题

即使我用另一个appid发布相同的应用程序,我如何保护仍在使用旧应用程序的用户?这里有什么最佳实践吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-26 22:32:58

不幸的是,似乎没有一种很好的方法来将现有的应用程序迁移到新的签名密钥。这可能是最好的,因为最佳实践仍然是a)拥有一个强密钥,b)尽可能地保留您的私有发布密钥。我发现this article概述了一种从1024位密钥迁移到4096位密钥的可行(但对用户不友好的方式),这似乎适合您的用例。由于您仍然拥有被攻破的应用程序的有效签名密钥,因此您可以尝试通过更新将它们从该应用程序迁移出去。

  1. 生成新的签名密钥,RSA4096
  2. 使用带有新密钥的签名pin的TrustedIntents更新第一个应用程序App1,RSA4096,该检查密钥将为您生成
  3. 使用不同的包名创建应用程序的新版本,RSA4096

使用新密钥签署App2,RSA4096<代码>H110将方法添加到App2,用于从App1接收用户数据,包括旧签名密钥RSA1024的签名pin,用于将旧的签名密钥RSA1024用于将来自App1的应用程序存储H213H114提示用户安装App2

  1. 运行并从App1
  2. App2导入数据提示用户卸载App1
票数 9
EN

Stack Overflow用户

发布于 2016-10-05 02:41:18

不幸的是,这个问题没有简单的答案。如上所述,最通用的解决方案是创建一个新的应用程序,告诉用户切换,然后迁移数据。

然而,在Lollipop+上,还有另一种可能的解决方案。您可以使用升级密钥就地更改应用程序的签名密钥,从而省去创建第二个应用程序或进行数据迁移的麻烦。不幸的是,Play目前还不支持这一点,所以它只是一个非市场应用程序的选择,而Kitkat上的用户就不走运了。

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

https://stackoverflow.com/questions/39656359

复制
相关文章

相似问题

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