CISSP告诉我,.NET 类 Rfc2898DeriveBytes 今天不会通过安全审核,因为它仍然使用 SHA1。它对 SHA1 的依赖——即使有迭代——使它太容易受到暴力破解。对于我自己的理解和任何其他偶然发现这个问题的人,Rfc2898DeriveBytes 是否仍然被认为是一种安全的密码散列方法?同样,HMAC SHA256 加盐但没有迭代就足够了吗?
作为记录,因为我被要求使用除 Rfc2898DeriveBytes 以外的任何东西,而且我知道最好不要从头开始自己编写,我打算反汇编 Rfc2898DeriveBytes 并使用 SHA256 而不是 SHA1 复制代码。