private PKMacBuilder(AlgorithmIdentifier digestAlgorithmIdentifier, int iterationCount, AlgorithmIdentifier macAlgorithmIdentifier, IPKMacPrimitivesProvider provider) { this.iterationCount = iterationCount; this.mac = macAlgorithmIdentifier; this.owf = digestAlgorithmIdentifier; this.provider = provider; }
/// <summary> /// Create. /// </summary> /// <param name="provider">The Mac provider</param> /// <param name="digestAlgorithmIdentifier">Digest Algorithm Id</param> /// <param name="macAlgorithmIdentifier">Mac Algorithm Id</param> public PKMacBuilder(IPKMacPrimitivesProvider provider, AlgorithmIdentifier digestAlgorithmIdentifier, AlgorithmIdentifier macAlgorithmIdentifier) : this(digestAlgorithmIdentifier, 1000, macAlgorithmIdentifier, provider) { }
/// <summary> /// Create a PKMAC builder enforcing a ceiling on the maximum iteration count. /// </summary> /// <param name="provider">supporting calculator</param> /// <param name="maxIterations">max allowable value for iteration count.</param> public PKMacBuilder(IPKMacPrimitivesProvider provider, int maxIterations) { this.provider = provider; this.maxIterations = maxIterations; }
/// <summary> /// Defaults with IPKMacPrimitivesProvider /// </summary> /// <param name="provider"></param> public PKMacBuilder(IPKMacPrimitivesProvider provider) : this(new AlgorithmIdentifier(OiwObjectIdentifiers.IdSha1), 1000, new AlgorithmIdentifier(IanaObjectIdentifiers.HmacSha1, DerNull.Instance), provider) { }