Package org.bouncycastle.tls
Class AbstractTlsKeyExchange
- java.lang.Object
-
- org.bouncycastle.tls.AbstractTlsKeyExchange
-
- All Implemented Interfaces:
TlsKeyExchange
- Direct Known Subclasses:
TlsDHanonKeyExchange
,TlsDHEKeyExchange
,TlsDHKeyExchange
,TlsECDHanonKeyExchange
,TlsECDHEKeyExchange
,TlsECDHKeyExchange
,TlsPSKKeyExchange
,TlsRSAKeyExchange
,TlsSRPKeyExchange
public abstract class AbstractTlsKeyExchange extends java.lang.Object implements TlsKeyExchange
Base class for supporting a TLS key exchange implementation.
-
-
Field Summary
Fields Modifier and Type Field Description protected TlsContext
context
protected int
keyExchange
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractTlsKeyExchange(int keyExchange)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
generateServerKeyExchange()
short[]
getClientCertificateTypes()
void
init(TlsContext context)
void
processClientCertificate(Certificate clientCertificate)
void
processClientKeyExchange(java.io.InputStream input)
void
processServerCertificate(Certificate serverCertificate)
void
processServerKeyExchange(java.io.InputStream input)
boolean
requiresCertificateVerify()
boolean
requiresServerKeyExchange()
void
skipClientCredentials()
void
skipServerKeyExchange()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.bouncycastle.tls.TlsKeyExchange
generateClientKeyExchange, generatePreMasterSecret, processClientCredentials, processServerCredentials, skipServerCredentials
-
-
-
-
Field Detail
-
keyExchange
protected int keyExchange
-
context
protected TlsContext context
-
-
Method Detail
-
init
public void init(TlsContext context)
- Specified by:
init
in interfaceTlsKeyExchange
-
processServerCertificate
public void processServerCertificate(Certificate serverCertificate) throws java.io.IOException
- Specified by:
processServerCertificate
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
requiresServerKeyExchange
public boolean requiresServerKeyExchange()
- Specified by:
requiresServerKeyExchange
in interfaceTlsKeyExchange
-
generateServerKeyExchange
public byte[] generateServerKeyExchange() throws java.io.IOException
- Specified by:
generateServerKeyExchange
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
skipServerKeyExchange
public void skipServerKeyExchange() throws java.io.IOException
- Specified by:
skipServerKeyExchange
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
processServerKeyExchange
public void processServerKeyExchange(java.io.InputStream input) throws java.io.IOException
- Specified by:
processServerKeyExchange
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
getClientCertificateTypes
public short[] getClientCertificateTypes()
- Specified by:
getClientCertificateTypes
in interfaceTlsKeyExchange
-
skipClientCredentials
public void skipClientCredentials() throws java.io.IOException
- Specified by:
skipClientCredentials
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
processClientCertificate
public void processClientCertificate(Certificate clientCertificate) throws java.io.IOException
- Specified by:
processClientCertificate
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
processClientKeyExchange
public void processClientKeyExchange(java.io.InputStream input) throws java.io.IOException
- Specified by:
processClientKeyExchange
in interfaceTlsKeyExchange
- Throws:
java.io.IOException
-
requiresCertificateVerify
public boolean requiresCertificateVerify()
- Specified by:
requiresCertificateVerify
in interfaceTlsKeyExchange
-
-