<PackageReference Include="BouncyCastle.Cryptography" Version="2.6.1" />

Org.BouncyCastle.Tls.Crypto.Impl.BC.BcTlsDHDomain

public class BcTlsDHDomain : TlsDHDomain
BC light-weight support class for Diffie-Hellman key pair generation and key agreement over a specified Diffie-Hellman configuration.
namespace Org.BouncyCastle.Tls.Crypto.Impl.BC { public class BcTlsDHDomain : TlsDHDomain { protected readonly BcTlsCrypto m_crypto; protected readonly TlsDHConfig m_config; protected readonly DHParameters m_domainParameters; public static BcTlsSecret CalculateDHAgreement(BcTlsCrypto crypto, DHPrivateKeyParameters privateKey, DHPublicKeyParameters publicKey, bool padded); public static DHParameters GetDomainParameters(TlsDHConfig dhConfig); public BcTlsDHDomain(BcTlsCrypto crypto, TlsDHConfig dhConfig); public virtual BcTlsSecret CalculateDHAgreement(DHPrivateKeyParameters privateKey, DHPublicKeyParameters publicKey); public virtual TlsAgreement CreateDH(); public virtual BigInteger DecodeParameter(byte[] encoding); public virtual DHPublicKeyParameters DecodePublicKey(byte[] encoding); public virtual byte[] EncodeParameter(BigInteger x); public virtual byte[] EncodePublicKey(DHPublicKeyParameters publicKey); public virtual AsymmetricCipherKeyPair GenerateKeyPair(); } }