/// <summary> /// Generates a new performance derivative value based off this PC's /// performance /// </summary> /// <returns>Rhe generated value</returns> public ulong GeneratePerformanceDerivative() { Stopwatch watch = Stopwatch.StartNew(); var rand = new Random(); var salt = new byte[256 / 8]; var buff = new byte[256 / 8]; rand.NextBytes(salt); // TODO manage overflow var test = new Pbkdf2KeyDerive("Hello World", salt, checked ((int)Pbkdf2Iterations)); long a = watch.ElapsedMilliseconds; test.GetBytes(buff.Length); long b = watch.ElapsedMilliseconds - a; PerformanceDerivativeValue = (ulong)b; #if DEBUG Console.WriteLine("Initialization time: " + Convert.ToString(a)); Console.WriteLine("Derivation time: " + Convert.ToString(b)); #endif return(PerformanceDerivativeValue); }
/// <summary> /// Generates a new performance derivative value based off this PC's /// performance /// </summary> /// <returns>Rhe generated value</returns> public ulong GeneratePerformanceDerivative() { Stopwatch watch = Stopwatch.StartNew(); var rand = new Random(); var salt = new byte[256 / 8]; var buff = new byte[256 / 8]; rand.NextBytes(salt); var test = new Pbkdf2KeyDerive("Hello World", salt, Pbkdf2Iterations); long a = watch.ElapsedMilliseconds; test.GetBytes(buff.Length); long b = watch.ElapsedMilliseconds - a; this.PerformanceDerivativeValue = (ulong)b; return(this.PerformanceDerivativeValue); }