using System; using System.Collections.Generic; using System.Security.Cryptography; using System.Text; namespace OFBButte.Infrastructure.Hashing { /// /// Specifies options for password hashing. /// public class PasswordHasherOptions { private static readonly RandomNumberGenerator _defaultRng = RandomNumberGenerator.Create(); // secure PRNG /// /// Gets or sets the number of iterations used when hashing passwords using PBKDF2. Default is 10,000. /// /// /// The number of iterations used when hashing passwords using PBKDF2. /// /// /// This value is only used when the compatibility mode is set to 'V3'. /// The value must be a positive integer. /// public int IterationCount { get; set; } = 10000; // for unit testing internal RandomNumberGenerator Rng { get; set; } = _defaultRng; } }