public class TlsDHKeyExchange extends AbstractTlsKeyExchange
Modifier and Type | Field and Description |
---|---|
protected TlsAgreement |
agreement |
protected TlsCredentialedAgreement |
agreementCredentials |
protected TlsDHConfig |
dhConfig |
protected TlsDHConfigVerifier |
dhConfigVerifier |
protected TlsCertificate |
dhPeerCertificate |
context, keyExchange, supportedSignatureAlgorithms
Constructor and Description |
---|
TlsDHKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsDHConfig dhConfig) |
TlsDHKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsDHConfigVerifier dhConfigVerifier) |
Modifier and Type | Method and Description |
---|---|
void |
generateClientKeyExchange(java.io.OutputStream output) |
protected void |
generateEphemeral(java.io.OutputStream output) |
TlsSecret |
generatePreMasterSecret() |
byte[] |
generateServerKeyExchange() |
void |
processClientCertificate(Certificate clientCertificate) |
void |
processClientCredentials(TlsCredentials clientCredentials) |
void |
processClientKeyExchange(java.io.InputStream input) |
protected void |
processEphemeral(byte[] y) |
void |
processServerCertificate(Certificate serverCertificate) |
void |
processServerCredentials(TlsCredentials serverCredentials) |
void |
processServerKeyExchange(java.io.InputStream input) |
boolean |
requiresServerKeyExchange() |
void |
skipServerCredentials() |
void |
validateCertificateRequest(CertificateRequest certificateRequest) |
protected TlsCertificate |
validatePeerCertificate(int connectionEnd,
Certificate peerCertificate) |
checkServerCertSigAlg, init, parseSignature, requiresCertificateVerify, skipClientCredentials, skipServerKeyExchange
protected TlsDHConfigVerifier dhConfigVerifier
protected TlsCredentialedAgreement agreementCredentials
protected TlsCertificate dhPeerCertificate
protected TlsDHConfig dhConfig
protected TlsAgreement agreement
public TlsDHKeyExchange(int keyExchange, java.util.Vector supportedSignatureAlgorithms, TlsDHConfigVerifier dhConfigVerifier)
public TlsDHKeyExchange(int keyExchange, java.util.Vector supportedSignatureAlgorithms, TlsDHConfig dhConfig)
public void skipServerCredentials() throws java.io.IOException
java.io.IOException
public void processServerCredentials(TlsCredentials serverCredentials) throws java.io.IOException
processServerCredentials
in interface TlsKeyExchange
processServerCredentials
in class AbstractTlsKeyExchange
java.io.IOException
public void processServerCertificate(Certificate serverCertificate) throws java.io.IOException
processServerCertificate
in interface TlsKeyExchange
processServerCertificate
in class AbstractTlsKeyExchange
java.io.IOException
public boolean requiresServerKeyExchange()
requiresServerKeyExchange
in interface TlsKeyExchange
requiresServerKeyExchange
in class AbstractTlsKeyExchange
public byte[] generateServerKeyExchange() throws java.io.IOException
generateServerKeyExchange
in interface TlsKeyExchange
generateServerKeyExchange
in class AbstractTlsKeyExchange
java.io.IOException
public void processServerKeyExchange(java.io.InputStream input) throws java.io.IOException
processServerKeyExchange
in interface TlsKeyExchange
processServerKeyExchange
in class AbstractTlsKeyExchange
java.io.IOException
public void validateCertificateRequest(CertificateRequest certificateRequest) throws java.io.IOException
java.io.IOException
public void processClientCredentials(TlsCredentials clientCredentials) throws java.io.IOException
java.io.IOException
public void generateClientKeyExchange(java.io.OutputStream output) throws java.io.IOException
java.io.IOException
public void processClientCertificate(Certificate clientCertificate) throws java.io.IOException
processClientCertificate
in interface TlsKeyExchange
processClientCertificate
in class AbstractTlsKeyExchange
java.io.IOException
public void processClientKeyExchange(java.io.InputStream input) throws java.io.IOException
processClientKeyExchange
in interface TlsKeyExchange
processClientKeyExchange
in class AbstractTlsKeyExchange
java.io.IOException
public TlsSecret generatePreMasterSecret() throws java.io.IOException
java.io.IOException
protected void generateEphemeral(java.io.OutputStream output) throws java.io.IOException
java.io.IOException
protected void processEphemeral(byte[] y) throws java.io.IOException
java.io.IOException
protected TlsCertificate validatePeerCertificate(int connectionEnd, Certificate peerCertificate) throws java.io.IOException
java.io.IOException