org.bouncycastle.crypto.tls
Class TlsPSKKeyExchange
java.lang.Object
org.bouncycastle.crypto.tls.AbstractTlsKeyExchange
org.bouncycastle.crypto.tls.TlsPSKKeyExchange
- All Implemented Interfaces:
- TlsKeyExchange
public class TlsPSKKeyExchange
- extends AbstractTlsKeyExchange
TLS 1.0 PSK key exchange (RFC 4279).
Constructor Summary |
TlsPSKKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsPSKIdentity pskIdentity,
DHParameters dhParameters,
int[] namedCurves,
short[] clientECPointFormats,
short[] serverECPointFormats)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
pskIdentity
protected TlsPSKIdentity pskIdentity
dhParameters
protected DHParameters dhParameters
namedCurves
protected int[] namedCurves
clientECPointFormats
protected short[] clientECPointFormats
serverECPointFormats
protected short[] serverECPointFormats
psk_identity_hint
protected byte[] psk_identity_hint
dhAgreePrivateKey
protected DHPrivateKeyParameters dhAgreePrivateKey
dhAgreePublicKey
protected DHPublicKeyParameters dhAgreePublicKey
serverPublicKey
protected AsymmetricKeyParameter serverPublicKey
rsaServerPublicKey
protected RSAKeyParameters rsaServerPublicKey
serverCredentials
protected TlsEncryptionCredentials serverCredentials
premasterSecret
protected byte[] premasterSecret
TlsPSKKeyExchange
public TlsPSKKeyExchange(int keyExchange,
java.util.Vector supportedSignatureAlgorithms,
TlsPSKIdentity pskIdentity,
DHParameters dhParameters,
int[] namedCurves,
short[] clientECPointFormats,
short[] serverECPointFormats)
skipServerCredentials
public void skipServerCredentials()
throws java.io.IOException
- Throws:
java.io.IOException
processServerCredentials
public void processServerCredentials(TlsCredentials serverCredentials)
throws java.io.IOException
- Specified by:
processServerCredentials
in interface TlsKeyExchange
- Overrides:
processServerCredentials
in class AbstractTlsKeyExchange
- Throws:
java.io.IOException
generateServerKeyExchange
public byte[] generateServerKeyExchange()
throws java.io.IOException
- Specified by:
generateServerKeyExchange
in interface TlsKeyExchange
- Overrides:
generateServerKeyExchange
in class AbstractTlsKeyExchange
- Throws:
java.io.IOException
processServerCertificate
public void processServerCertificate(Certificate serverCertificate)
throws java.io.IOException
- Specified by:
processServerCertificate
in interface TlsKeyExchange
- Overrides:
processServerCertificate
in class AbstractTlsKeyExchange
- Throws:
java.io.IOException
requiresServerKeyExchange
public boolean requiresServerKeyExchange()
- Specified by:
requiresServerKeyExchange
in interface TlsKeyExchange
- Overrides:
requiresServerKeyExchange
in class AbstractTlsKeyExchange
processServerKeyExchange
public void processServerKeyExchange(java.io.InputStream input)
throws java.io.IOException
- Specified by:
processServerKeyExchange
in interface TlsKeyExchange
- Overrides:
processServerKeyExchange
in class AbstractTlsKeyExchange
- Throws:
java.io.IOException
validateCertificateRequest
public void validateCertificateRequest(CertificateRequest certificateRequest)
throws java.io.IOException
- Throws:
java.io.IOException
processClientCredentials
public void processClientCredentials(TlsCredentials clientCredentials)
throws java.io.IOException
- Throws:
java.io.IOException
generateClientKeyExchange
public void generateClientKeyExchange(java.io.OutputStream output)
throws java.io.IOException
- Throws:
java.io.IOException
generatePremasterSecret
public byte[] generatePremasterSecret()
throws java.io.IOException
- Throws:
java.io.IOException
generateOtherSecret
protected byte[] generateOtherSecret(int pskLength)
throws java.io.IOException
- Throws:
java.io.IOException
validateRSAPublicKey
protected RSAKeyParameters validateRSAPublicKey(RSAKeyParameters key)
throws java.io.IOException
- Throws:
java.io.IOException