将密钥库与源代码一起存储在公共存储库中有什么安全隐患?
将其存储在回购中的原因是方便。当您执行'git pull或clone'并在本地计算机上构建时(例如使用sbt sign-release),没有依赖关系:您只需在提示时提供密码并创建已签名的应用程序。
假设我使用从密码生成程序获得的20个字符的密码(字母,数字,特殊字符等)来保护它。我认为攻击者发起攻击并访问密钥库中的私钥对计算是不可行的。我希望安全/加密专家能够确定将密钥库存储在公共仓库中是否安全。
由于
答案 0 :(得分:0)
隐藏密钥环,代码属于“通过安全保障”主体。理论上,安全性应该远离这个概念,但在这种情况下,答案可能是在公共存储库上暴露敏感数据可能会使您受到针对密钥环的特定漏洞或安全算法的实现的攻击。等等。
我的意思是你使用的所有算法都是100%安全的和Keyrings,但是密钥环的版本可能包含特定的漏洞或错误或安全算法的错误实现。
因此,在公共存储库中公开这些数据可能会让您遇到只想证明其技能的黑客。
答案 1 :(得分:0)
我做了一些研究。我在How does keytool protect keys?和JKS protection(http://metastatic.org/source/JKS.html)找到了关于JKS算法的信息。
基于此我回答了我自己的问题:我得出结论,用我的20个字符随机生成的密码,使用长度为20字节的随机盐和链式SHA1(密码,盐)来获取随机流长度等于密钥长度2048,与私钥进行异或,在可预见的将来计算上不可能提取私钥。