public IRsaOaep Get(KasHashAlg hashAlg) { ISha sha = null; switch (hashAlg) { case KasHashAlg.SHA1: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA1, DigestSizes.d160)); break; case KasHashAlg.SHA2_D224: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d224)); break; case KasHashAlg.SHA2_D256: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d256)); break; case KasHashAlg.SHA2_D384: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d384)); break; case KasHashAlg.SHA2_D512: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d512)); break; case KasHashAlg.SHA2_D512_T224: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d512t224)); break; case KasHashAlg.SHA2_D512_T256: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA2, DigestSizes.d512t256)); break; case KasHashAlg.SHA3_D224: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA3, DigestSizes.d224)); break; case KasHashAlg.SHA3_D256: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA3, DigestSizes.d256)); break; case KasHashAlg.SHA3_D384: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA3, DigestSizes.d384)); break; case KasHashAlg.SHA3_D512: sha = _shaFactory.GetShaInstance(new HashFunction(ModeValues.SHA3, DigestSizes.d512)); break; } return(new RsaOaep(sha, new Mgf(sha), _rsa, _entropyFactory)); }
/// <summary> /// Get <see cref="HashFunctions"/> from the provided <see cref="KasHashAlg"/>. /// </summary> /// <param name="kasHashAlg">The <see cref="KasHashAlg"/> to use for getting a <see cref="HashFunctions"/>.</param> /// <returns></returns> public static HashFunctions GetHashFunctionEnumFromKasHashFunctionEnum(KasHashAlg kasHashAlg) { switch (kasHashAlg) { case KasHashAlg.SHA1: return(HashFunctions.Sha1); case KasHashAlg.SHA2_D224: return(HashFunctions.Sha2_d224); case KasHashAlg.SHA2_D256: return(HashFunctions.Sha2_d256); case KasHashAlg.SHA2_D384: return(HashFunctions.Sha2_d384); case KasHashAlg.SHA2_D512: return(HashFunctions.Sha2_d512); case KasHashAlg.SHA2_D512_T224: return(HashFunctions.Sha2_d512t224); case KasHashAlg.SHA2_D512_T256: return(HashFunctions.Sha2_d512t256); case KasHashAlg.SHA3_D224: return(HashFunctions.Sha3_d224); case KasHashAlg.SHA3_D256: return(HashFunctions.Sha3_d256); case KasHashAlg.SHA3_D384: return(HashFunctions.Sha3_d384); case KasHashAlg.SHA3_D512: return(HashFunctions.Sha3_d512); default: throw new ArgumentOutOfRangeException(nameof(kasHashAlg), kasHashAlg, null); } }
public IRsaOaep Get(KasHashAlg hashAlg) { var kts = _ktsFactory.Get(hashAlg); return(new FakeKts_BadZ(kts, _random)); }