我正在使用密钥库(.jks)来存储我用来签署Android应用程序的证书。 Android文档和社区给我留下了深刻印象从不丢失此文件的重要性,但我没有找到任何关于我应该保留它的指导。
将它存储在Git中是一个可怕的想法(即它会产生安全后果吗?)
假设密钥库本身和其中的私钥都有强密码。
答案 0 :(得分:16)
任何对您的Git仓库具有读取权限的人都将获得私钥。这被认为是一个安全问题,因此不建议这样做。如果您的GIT仓库是完全私有的,意味着没有人可以访问它(不是私人仓库,即GitHub,而是本地磁盘或您在100%控制的基础设施中的git仓库)然后将您的私钥放在那里将其保存在本地磁盘上是安全的。
假设密钥库本身和其中的私钥都有强密码
请注意,如果您的(" public")私钥,密码是您的最后一道防线。如果它会以任何方式受到损害(猜测,被盗,破裂),那么它就结束了。
此外,我非常确定并非所有(如果有的话)开发人员都需要访问发布密钥。如果您需要它们,请将其从回购中移除。但我首先要重新考虑安全政策。
答案 1 :(得分:5)
要更新您的应用,您需要两件事:
通过将证书放入存储库并与开发人员共享,您将放弃一个安全令牌。
如果您的Google Play开发者控制台帐户安全,那么您应该没问题。但这取决于你的szenario。
将它放入存储库更容易:
很多人喜欢把它放在一张或多张SD卡上并放在某处。但是大多数人都没有一个叫做“#34;某个地方”的地方。在他们的办公室。几年后还可以阅读吗?
另外两个考虑因素:
如果Android应用的产品所有者在您的公司中发生变化,您永远不会知道旧的所有者是否仍有副本,并且没有人知道谁已经访问过它。您无法更改密钥。因此,如果密钥曾经从一个人传递到另一个人,那么必须假设它不安全。
当然,您可以完全保密。它由您的密码保护,没有人知道。但是如果你死了怎么办?有人可能想要更新您的应用。这不可能。当你死的时候,保密的私钥会丢失。
所以我认为把它放在你的存储库中就好了。请注意保护您的Google帐户。对于此帐户,可以更改密码,可以激活双faktor,等等。