Table of Contents

Class BcTlsMLKemDomain

Namespace
Org.BouncyCastle.Tls.Crypto.Impl.BC
Assembly
BouncyCastle.Cryptography.dll
public class BcTlsMLKemDomain : TlsKemDomain
Inheritance
BcTlsMLKemDomain
Implements
Inherited Members

Constructors

BcTlsMLKemDomain(BcTlsCrypto, TlsKemConfig)

public BcTlsMLKemDomain(BcTlsCrypto crypto, TlsKemConfig kemConfig)

Parameters

crypto BcTlsCrypto
kemConfig TlsKemConfig

Fields

m_config

protected readonly TlsKemConfig m_config

Field Value

TlsKemConfig

m_crypto

protected readonly BcTlsCrypto m_crypto

Field Value

BcTlsCrypto

m_domainParameters

protected readonly MLKemParameters m_domainParameters

Field Value

MLKemParameters

m_isServer

protected readonly bool m_isServer

Field Value

bool

Properties

IsServer

public virtual bool IsServer { get; }

Property Value

bool

Methods

CreateKem()

public virtual TlsAgreement CreateKem()

Returns

TlsAgreement

Decapsulate(MLKemPrivateKeyParameters, byte[])

public virtual BcTlsSecret Decapsulate(MLKemPrivateKeyParameters privateKey, byte[] ciphertext)

Parameters

privateKey MLKemPrivateKeyParameters
ciphertext byte[]

Returns

BcTlsSecret

DecodePublicKey(byte[])

public virtual MLKemPublicKeyParameters DecodePublicKey(byte[] encoding)

Parameters

encoding byte[]

Returns

MLKemPublicKeyParameters

Encapsulate(MLKemPublicKeyParameters, out TlsSecret)

public virtual byte[] Encapsulate(MLKemPublicKeyParameters publicKey, out TlsSecret secret)

Parameters

publicKey MLKemPublicKeyParameters
secret TlsSecret

Returns

byte[]

EncodePublicKey(MLKemPublicKeyParameters)

public virtual byte[] EncodePublicKey(MLKemPublicKeyParameters publicKey)

Parameters

publicKey MLKemPublicKeyParameters

Returns

byte[]

GenerateKeyPair()

public virtual AsymmetricCipherKeyPair GenerateKeyPair()

Returns

AsymmetricCipherKeyPair

GetDomainParameters(TlsKemConfig)

public static MLKemParameters GetDomainParameters(TlsKemConfig kemConfig)

Parameters

kemConfig TlsKemConfig

Returns

MLKemParameters