public class TlsPSKKeyExchange extends AbstractTlsKeyExchange
Modifier and Type | Field and Description |
---|---|
protected TlsAgreement |
agreement |
protected short[] |
clientECPointFormats |
protected TlsDHConfig |
dhConfig |
protected TlsDHConfigVerifier |
dhConfigVerifier |
protected TlsECConfig |
ecConfig |
protected TlsECConfigVerifier |
ecConfigVerifier |
protected TlsSecret |
preMasterSecret |
protected byte[] |
psk |
protected byte[] |
psk_identity_hint |
protected TlsPSKIdentity |
pskIdentity |
protected TlsPSKIdentityManager |
pskIdentityManager |
protected TlsCertificate |
serverCertificate |
protected TlsCredentialedDecryptor |
serverCredentials |
protected short[] |
serverECPointFormats |
context, keyExchange, supportedSignatureAlgorithms
Constructor and Description |
---|
TlsPSKKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsPSKIdentity pskIdentity,
TlsDHConfigVerifier dhConfigVerifier,
TlsECConfigVerifier ecConfigVerifier,
short[] clientECPointFormats,
short[] serverECPointFormats) |
TlsPSKKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsPSKIdentity pskIdentity,
TlsPSKIdentityManager pskIdentityManager,
TlsDHConfig dhConfig,
TlsECConfig ecConfig,
short[] serverECPointFormats) |
Modifier and Type | Method and Description |
---|---|
void |
generateClientKeyExchange(java.io.OutputStream output) |
protected void |
generateEphemeralDH(java.io.OutputStream output) |
protected void |
generateEphemeralECDH(java.io.OutputStream output) |
protected byte[] |
generateOtherSecret(int pskLength) |
TlsSecret |
generatePreMasterSecret() |
byte[] |
generateServerKeyExchange() |
void |
processClientCredentials(TlsCredentials clientCredentials) |
void |
processClientKeyExchange(java.io.InputStream input) |
protected void |
processEphemeralDH(byte[] y) |
protected void |
processEphemeralECDH(short[] localECPointFormats,
byte[] point) |
void |
processServerCertificate(Certificate serverCertificate) |
void |
processServerCredentials(TlsCredentials serverCredentials) |
void |
processServerKeyExchange(java.io.InputStream input) |
boolean |
requiresServerKeyExchange() |
void |
skipServerCredentials() |
checkServerCertSigAlg, getClientCertificateTypes, init, parseSignature, processClientCertificate, requiresCertificateVerify, skipClientCredentials, skipServerKeyExchange
protected TlsPSKIdentity pskIdentity
protected TlsPSKIdentityManager pskIdentityManager
protected TlsDHConfigVerifier dhConfigVerifier
protected TlsECConfigVerifier ecConfigVerifier
protected short[] clientECPointFormats
protected short[] serverECPointFormats
protected byte[] psk_identity_hint
protected byte[] psk
protected TlsDHConfig dhConfig
protected TlsECConfig ecConfig
protected TlsAgreement agreement
protected TlsCredentialedDecryptor serverCredentials
protected TlsCertificate serverCertificate
protected TlsSecret preMasterSecret
public TlsPSKKeyExchange(int keyExchange, java.util.Vector supportedSignatureAlgorithms, TlsPSKIdentity pskIdentity, TlsDHConfigVerifier dhConfigVerifier, TlsECConfigVerifier ecConfigVerifier, short[] clientECPointFormats, short[] serverECPointFormats)
public TlsPSKKeyExchange(int keyExchange, java.util.Vector supportedSignatureAlgorithms, TlsPSKIdentity pskIdentity, TlsPSKIdentityManager pskIdentityManager, TlsDHConfig dhConfig, TlsECConfig ecConfig, short[] serverECPointFormats)
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 byte[] generateServerKeyExchange() throws java.io.IOException
generateServerKeyExchange
in interface TlsKeyExchange
generateServerKeyExchange
in class AbstractTlsKeyExchange
java.io.IOException
public boolean requiresServerKeyExchange()
requiresServerKeyExchange
in interface TlsKeyExchange
requiresServerKeyExchange
in class AbstractTlsKeyExchange
public void processServerKeyExchange(java.io.InputStream input) throws java.io.IOException
processServerKeyExchange
in interface TlsKeyExchange
processServerKeyExchange
in class AbstractTlsKeyExchange
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 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 generateEphemeralDH(java.io.OutputStream output) throws java.io.IOException
java.io.IOException
protected void generateEphemeralECDH(java.io.OutputStream output) throws java.io.IOException
java.io.IOException
protected byte[] generateOtherSecret(int pskLength) throws java.io.IOException
java.io.IOException
protected void processEphemeralDH(byte[] y) throws java.io.IOException
java.io.IOException
protected void processEphemeralECDH(short[] localECPointFormats, byte[] point) throws java.io.IOException
java.io.IOException