Table of Contents

Class TlsSrpKeyExchange

Namespace
Org.BouncyCastle.Tls
Assembly
BouncyCastle.Cryptography.dll

(D)TLS SRP key exchange (RFC 5054).

public class TlsSrpKeyExchange : AbstractTlsKeyExchange, TlsKeyExchange
Inheritance
TlsSrpKeyExchange
Implements
Inherited Members

Constructors

TlsSrpKeyExchange(int, TlsSrpIdentity, TlsSrpConfigVerifier)

public TlsSrpKeyExchange(int keyExchange, TlsSrpIdentity srpIdentity, TlsSrpConfigVerifier srpConfigVerifier)

Parameters

keyExchange int
srpIdentity TlsSrpIdentity
srpConfigVerifier TlsSrpConfigVerifier

TlsSrpKeyExchange(int, TlsSrpLoginParameters)

public TlsSrpKeyExchange(int keyExchange, TlsSrpLoginParameters srpLoginParameters)

Parameters

keyExchange int
srpLoginParameters TlsSrpLoginParameters

Fields

m_serverCertificate

protected TlsCertificate m_serverCertificate

Field Value

TlsCertificate

m_serverCredentials

protected TlsCredentialedSigner m_serverCredentials

Field Value

TlsCredentialedSigner

m_srpClient

protected TlsSrp6Client m_srpClient

Field Value

TlsSrp6Client

m_srpConfigVerifier

protected TlsSrpConfigVerifier m_srpConfigVerifier

Field Value

TlsSrpConfigVerifier

m_srpIdentity

protected TlsSrpIdentity m_srpIdentity

Field Value

TlsSrpIdentity

m_srpLoginParameters

protected TlsSrpLoginParameters m_srpLoginParameters

Field Value

TlsSrpLoginParameters

m_srpPeerCredentials

protected BigInteger m_srpPeerCredentials

Field Value

BigInteger

m_srpSalt

protected byte[] m_srpSalt

Field Value

byte[]

m_srpServer

protected TlsSrp6Server m_srpServer

Field Value

TlsSrp6Server

Properties

RequiresServerKeyExchange

public override bool RequiresServerKeyExchange { get; }

Property Value

bool

Methods

GenerateClientKeyExchange(Stream)

public override void GenerateClientKeyExchange(Stream output)

Parameters

output Stream

Exceptions

IOException

GeneratePreMasterSecret()

public override TlsSecret GeneratePreMasterSecret()

Returns

TlsSecret

Exceptions

IOException

GenerateServerKeyExchange()

public override byte[] GenerateServerKeyExchange()

Returns

byte[]

Exceptions

IOException

ProcessClientCredentials(TlsCredentials)

public override void ProcessClientCredentials(TlsCredentials clientCredentials)

Parameters

clientCredentials TlsCredentials

Exceptions

IOException

ProcessClientKeyExchange(Stream)

public override void ProcessClientKeyExchange(Stream input)

Parameters

input Stream

Exceptions

IOException

ProcessServerCertificate(Certificate)

public override void ProcessServerCertificate(Certificate serverCertificate)

Parameters

serverCertificate Certificate

Exceptions

IOException

ProcessServerCredentials(TlsCredentials)

public override void ProcessServerCredentials(TlsCredentials serverCredentials)

Parameters

serverCredentials TlsCredentials

Exceptions

IOException

ProcessServerKeyExchange(Stream)

public override void ProcessServerKeyExchange(Stream input)

Parameters

input Stream

Exceptions

IOException

SkipServerCredentials()

public override void SkipServerCredentials()

Exceptions

IOException

ValidatePublicValue(BigInteger, BigInteger)

protected static BigInteger ValidatePublicValue(BigInteger N, BigInteger val)

Parameters

N BigInteger
val BigInteger

Returns

BigInteger