private static byte[] DeriveKey(byte[] key, byte[] salt, int outputSize, int iterations) { var output = new byte[outputSize]; Pbkdf2.ComputeKey(key, salt, iterations, Pbkdf2.CallbackFromHmac <HMACSHA256>(), outputSize, output); return(output); }
public static byte[] DeriveKeyWithConfig(byte[] key, byte[] salt, int outputSize, byte[] config) { int iterations; PBKDF2ConfigurationUtility.Read(config, out iterations); var output = new byte[outputSize]; Pbkdf2.ComputeKey(key, salt, iterations, Pbkdf2.CallbackFromHmac <HMACSHA256>(), outputSize, output); return(output); }
public static string TestSHA1(this Vector vector) { var derivedBytes = new byte[vector.Len]; Pbkdf2.ComputeKey (Encoding.ASCII.GetBytes(vector.Password), Encoding.ASCII.GetBytes(vector.Salt), vector.C, Pbkdf2.CallbackFromHmac <HMACSHA1>(), 20, derivedBytes); var derived = new string(HexBase16.Encode(derivedBytes)); return(derived); }