public static bool IsSupported(TlsHashAlgorithm algo) { return HashAlgorithms.Contains(algo); }
internal static void RegisterHash(TlsHashAlgorithm algo, Func<IDigest> factory) { if (!HashAlgorithms.Add(algo)) { throw new InvalidOperationException("Algorithm already registered"); } DigestFactories.Add(algo, factory); }
public static IDigest CreateDigestAlgorithm(TlsHashAlgorithm algo) { return DigestFactories[algo](); }
internal static void RegisterSuite(CipherSuite suite, TlsCipherAlgorithm cipher, TlsHashAlgorithm digest, TlsSignatureAlgorithm signature, TlsKeyExchange exchange) { Suites.Add(suite); CipherMapping.Add(suite, cipher); DigestMapping.Add(suite, digest); SignatureMapping.Add(suite, signature); KeyExchangeMapping.Add(suite, exchange); }