我需要为我们的系统实现密码散列机制。我正在PBKDF2为此目的使用。我为演示目的制作了一个小型控制台应用程序。使用我正在使用的参数,它使用我的桌面56 ms来生成最终的哈希值。
从我查阅过的资料来看,他们提到应该合理确保 100 毫秒的生成时间。这是正确的假设还是我应该让我的一代变慢?如果是,我应该更改哪些参数?
代码:
class Program
{
static void Main(string[] args)
{
var watch = System.Diagnostics.Stopwatch.StartNew();
byte[] op = null;
op = GetPDKDF2("password", 20, 10000);
watch.Stop();
Console.WriteLine("total time: " + watch.ElapsedMilliseconds);
Console.ReadKey();
}
public static byte[] GetPDKDF2(string password, int saltSize, int iterationCount)
{
var pdf = new Rfc2898DeriveBytes(password, saltSize, iterationCount);
return pdf.GetBytes(20);
}
}
holdtom
相关分类