Package org.bouncycastle.tls
Class TlsPSKKeyExchange
java.lang.Object
org.bouncycastle.tls.AbstractTlsKeyExchange
org.bouncycastle.tls.TlsPSKKeyExchange
- All Implemented Interfaces:
TlsKeyExchange
(D)TLS PSK key exchange (RFC 4279).
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected TlsAgreementprotected TlsDHConfigprotected TlsDHGroupVerifierprotected TlsECConfigprotected TlsSecretprotected byte[]protected byte[]protected TlsPSKIdentityprotected TlsPSKIdentityManagerprotected TlsCredentialedDecryptorprotected TlsEncryptorFields inherited from class org.bouncycastle.tls.AbstractTlsKeyExchange
context, keyExchange -
Constructor Summary
ConstructorsConstructorDescriptionTlsPSKKeyExchange(int keyExchange, TlsPSKIdentityManager pskIdentityManager, TlsDHConfig dhConfig, TlsECConfig ecConfig) TlsPSKKeyExchange(int keyExchange, TlsPSKIdentity pskIdentity, TlsDHGroupVerifier dhGroupVerifier) -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidgenerateEphemeralDH(OutputStream output) protected voidgenerateEphemeralECDH(OutputStream output) protected byte[]generateOtherSecret(int pskLength) byte[]voidprocessClientCredentials(TlsCredentials clientCredentials) voidprotected voidprocessEphemeralDH(byte[] y) protected voidprocessEphemeralECDH(byte[] point) voidprocessServerCertificate(Certificate serverCertificate) voidprocessServerCredentials(TlsCredentials serverCredentials) voidbooleanvoidMethods inherited from class org.bouncycastle.tls.AbstractTlsKeyExchange
getClientCertificateTypes, init, processClientCertificate, requiresCertificateVerify, skipClientCredentials, skipServerKeyExchange
-
Field Details
-
pskIdentity
-
pskIdentityManager
-
dhGroupVerifier
-
psk_identity_hint
protected byte[] psk_identity_hint -
psk
protected byte[] psk -
dhConfig
-
ecConfig
-
agreement
-
serverCredentials
-
serverEncryptor
-
preMasterSecret
-
-
Constructor Details
-
TlsPSKKeyExchange
public TlsPSKKeyExchange(int keyExchange, TlsPSKIdentity pskIdentity, TlsDHGroupVerifier dhGroupVerifier) -
TlsPSKKeyExchange
public TlsPSKKeyExchange(int keyExchange, TlsPSKIdentityManager pskIdentityManager, TlsDHConfig dhConfig, TlsECConfig ecConfig)
-
-
Method Details
-
skipServerCredentials
- Throws:
IOException
-
processServerCredentials
- Throws:
IOException
-
processServerCertificate
- Specified by:
processServerCertificatein interfaceTlsKeyExchange- Overrides:
processServerCertificatein classAbstractTlsKeyExchange- Throws:
IOException
-
generateServerKeyExchange
- Specified by:
generateServerKeyExchangein interfaceTlsKeyExchange- Overrides:
generateServerKeyExchangein classAbstractTlsKeyExchange- Throws:
IOException
-
requiresServerKeyExchange
public boolean requiresServerKeyExchange()- Specified by:
requiresServerKeyExchangein interfaceTlsKeyExchange- Overrides:
requiresServerKeyExchangein classAbstractTlsKeyExchange
-
processServerKeyExchange
- Specified by:
processServerKeyExchangein interfaceTlsKeyExchange- Overrides:
processServerKeyExchangein classAbstractTlsKeyExchange- Throws:
IOException
-
processClientCredentials
- Throws:
IOException
-
generateClientKeyExchange
- Throws:
IOException
-
processClientKeyExchange
- Specified by:
processClientKeyExchangein interfaceTlsKeyExchange- Overrides:
processClientKeyExchangein classAbstractTlsKeyExchange- Throws:
IOException
-
generatePreMasterSecret
- Throws:
IOException
-
generateEphemeralDH
- Throws:
IOException
-
generateEphemeralECDH
- Throws:
IOException
-
generateOtherSecret
- Throws:
IOException
-
processEphemeralDH
- Throws:
IOException
-
processEphemeralECDH
- Throws:
IOException
-