【发布时间】:2018-10-31 17:26:37
【问题描述】:
我需要为我们的系统实现密码散列机制。我为此目的使用
PBKDF2。我为演示目的制作了一个小型控制台应用程序。使用我使用的参数,它会使用我的桌面56 ms来生成最终的哈希。从我看过的资料来看,他们提到100ms的生成时间应该是合理的。这是正确的假设还是我应该让我的一代变慢?如果是,我应该更改哪些参数?
代码:
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);
}
}
【问题讨论】:
标签: c# security encryption hash pbkdf2