mvn --encrypt-master-password <密码>:选择<密码>的好习惯?应该具备哪种级别的隐私?</password> </password>

时间:2013-05-07 14:46:52

标签: maven password-protection password-encryption password-generator

我正在学习使用maven password encryption功能,我想知道如何选择参数<password>。有两件事我不明白:

1)mvn --encrypt-master-password foobar将始终提供不同的encrypted master password

由于encrypted master password总是不同,我只看到两种可能性:

  1. 本地属性存储在某处,以便可以使用它来解密encrypted master password以获取master password。这意味着我们的encrypted server passwords只能在本地使用。
  2. 没有任何内容存储,master password没用,根本没用。
  3. 所以,我的问题是:

      

    本地存储什么?我的master password会保持安全吗?有没有第三种可能性我没想到?

    2)在maven网站上,写着:

      

    另请注意,加密密码可由具有主密码和设置安全文件的人解密。如果您希望可能检索settings.xml文件,请保持此文件的安全(或单独存储)。

    如果settings security file是要保护的东西,为什么我要打扰选择强主密码呢?我不能只使用foobar并保持我的settings security file安全吗?

    此外,看起来有两个文件(settings security filesettings file)的人不需要master password来连接到maven服务器。他可以在不知道密码的情况下使用我们的身份解密master password(使其为纯文本)需要servers passwords“仅”。但话说回来,保护settings security file应该是要走的路,master password仍然无用。

    我的问题:

      

    master password有多重要?我有记得吗?我可以使用一个长的随机短语并永远忘记它吗?

    PS:我找不到答案here

1 个答案:

答案 0 :(得分:10)

第一个密码仅用于生成主密码,然后您可以忘记密码。它是使用加密机制和伪随机组件生成的。因此,不应该破译它。在您的安全设置文件中,没有任何其他内容存储在您的主密码中,并且不会再提示或再次询问。

此主密码用于在设置文件中加密和解密密码。它与用户引入的密码具有相同的值,但几乎不可能推断出它。

然后:

  1. 在您的安全设置文件中,除了主密码之外没有其他任何内容存储,并且不会再提示或再次询问。所有安全性都在于安全设置文件的安全性。

  2. 主密码并不重要,您可以立即忘记。你可以随心所欲地使用它。

  3. 我不喜欢这种方法来保护我的密码,我希望有一个真正的密码加密机制,并且没有存储真正的主密码。使用密码策略的公钥 - 私钥似乎更好。