【问题标题】:Managing Android keystores [closed]管理 Android 密钥库 [关闭]
【发布时间】:2015-01-28 10:55:45
【问题描述】:

应如何管理 Android 密钥库?是否可以将所有应用程序的所有密钥存储在一个密钥库中,或者每个应用程序有一个密钥库?对密钥库使用版本控制有什么意义吗?

【问题讨论】:

    标签: android keystore


    【解决方案1】:

    您绝对应该只有一个密钥库来保存所有密钥,因为它更易于管理,而且除了密钥库的密码之外,所有密钥都已经有自己的密码。真正的问题是:您应该为每个应用程序创建一个密钥,还是使用一个密钥为所有应用程序签名?正如this answer 中提到的,使用相同密钥为所有应用签名有一些优点,即:使用相同密钥签名的应用可以在同一进程中运行并无缝共享数据(参见android docs)。

    关于您的版本控制问题,您绝对需要备份您的密钥库!如果您丢失了密钥库,您将无法再在 Google Play 商店中为您的应用程序签署更新!您的密钥库二进制文件不应该经常更改(除非您要添加密钥),但是私有 git 存储库是使用您的项目之一备份密钥库的好地方。不要使用版本控制,但如果它是开源存储库(例如免费 github)或者您的团队成员无法信任密钥库(例如短期承包商)。否则,只需找到一个安全的地方进行备份即可。

    【讨论】:

    • 开源 VCS 有什么问题?
    • 开源 VCS 很棒。唯一的问题是您不想让所有人都可以使用您的密钥库,因此这不是备份您的密钥库的最佳位置。
    • 哦,你的意思是我不应该使用 GitHub 或类似的东西,但 Git 本身(带有私人仓库)很好。我现在理解正确了吗?
    • 是的,没错
    【解决方案2】:

    通常您只有一个密钥库用于签署所有应用程序;您实际上是在使用您的凭据“标记”所有应用程序。这篇文章提供了很多有价值的信息:Android: What is a keystore file, and what is it used for?

    Android 开发者网站还提供了一篇非常有价值的文章,其中讨论了密钥库、如何为您的应用程序签名以及各种其他注意事项:http://developer.android.com/tools/publishing/app-signing.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 2022-01-26
      • 2011-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多