Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在这里阅读了很多关于 Rfc2898DeriveBytes() 的帖子,似乎在所有这些帖子中,盐都是预先计算好的并传递给构造函数。但是,有一个构造函数接受盐长度输入,并且会为您计算盐。之后可以在 Salt 属性中使用它。
让该方法计算盐有什么缺点吗?就我而言,用途是用于密码散列。
指定盐长度而不是盐本身可以减少在派生新密钥(或隐藏存储密码)时不安全地选择盐的机会。盐应该由加密随机位生成器选择,并且应该在每次更新密码时更改。据推测,此构造函数将使用正确播种的高质量 RNG。将其留在应用程序中最坏的情况是会出现错误,并且充其量会造成不必要的复杂性。
当然,如果您要恢复密钥,例如检查用户输入与存储的密码,您需要指定最初使用的盐。