public class TlsECDHKeyExchange extends AbstractTlsKeyExchange
Modifier and Type | Field and Description |
---|---|
protected TlsAgreementCredentials |
agreementCredentials |
protected short[] |
clientECPointFormats |
protected ECPrivateKeyParameters |
ecAgreePrivateKey |
protected ECPublicKeyParameters |
ecAgreePublicKey |
protected int[] |
namedCurves |
protected short[] |
serverECPointFormats |
protected AsymmetricKeyParameter |
serverPublicKey |
protected TlsSigner |
tlsSigner |
context, keyExchange, supportedSignatureAlgorithms
Constructor and Description |
---|
TlsECDHKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
int[] namedCurves,
short[] clientECPointFormats,
short[] serverECPointFormats) |
Modifier and Type | Method and Description |
---|---|
void |
generateClientKeyExchange(java.io.OutputStream output) |
byte[] |
generatePremasterSecret() |
byte[] |
generateServerKeyExchange() |
void |
init(TlsContext context) |
void |
processClientCertificate(Certificate clientCertificate) |
void |
processClientCredentials(TlsCredentials clientCredentials) |
void |
processClientKeyExchange(java.io.InputStream input) |
void |
processServerCertificate(Certificate serverCertificate) |
void |
processServerKeyExchange(java.io.InputStream input) |
boolean |
requiresServerKeyExchange() |
void |
skipServerCredentials() |
void |
validateCertificateRequest(CertificateRequest certificateRequest) |
parseSignature, processServerCredentials, skipClientCredentials, skipServerKeyExchange
protected TlsSigner tlsSigner
protected int[] namedCurves
protected short[] clientECPointFormats
protected short[] serverECPointFormats
protected AsymmetricKeyParameter serverPublicKey
protected TlsAgreementCredentials agreementCredentials
protected ECPrivateKeyParameters ecAgreePrivateKey
protected ECPublicKeyParameters ecAgreePublicKey
public TlsECDHKeyExchange(int keyExchange, java.util.Vector supportedSignatureAlgorithms, int[] namedCurves, short[] clientECPointFormats, short[] serverECPointFormats)
public void init(TlsContext context)
init
in interface TlsKeyExchange
init
in class AbstractTlsKeyExchange
public void skipServerCredentials() throws java.io.IOException
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 byte[] generatePremasterSecret() throws java.io.IOException
java.io.IOException