Class JceTlsECDH
- java.lang.Object
-
- org.bouncycastle.tls.crypto.impl.jcajce.JceTlsECDH
-
- All Implemented Interfaces:
TlsAgreement
public class JceTlsECDH extends java.lang.Object implements TlsAgreement
Support class for ephemeral Elliptic Curve Diffie-Hellman using the JCE.
-
-
Field Summary
Fields Modifier and Type Field Description protected JceTlsECDomaindomainprotected java.security.KeyPairlocalKeyPairprotected java.security.PublicKeypeerPublicKey
-
Constructor Summary
Constructors Constructor Description JceTlsECDH(JceTlsECDomain domain)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TlsSecretcalculateSecret()Calculate the agreed secret based on the calculator's current state.byte[]generateEphemeral()Generate an ephemeral key pair, returning the encoding of the public key.voidreceivePeerValue(byte[] peerValue)Pass in the public key for the peer to the agreement calculator.
-
-
-
Field Detail
-
domain
protected final JceTlsECDomain domain
-
localKeyPair
protected java.security.KeyPair localKeyPair
-
peerPublicKey
protected java.security.PublicKey peerPublicKey
-
-
Constructor Detail
-
JceTlsECDH
public JceTlsECDH(JceTlsECDomain domain)
-
-
Method Detail
-
generateEphemeral
public byte[] generateEphemeral() throws java.io.IOExceptionDescription copied from interface:TlsAgreementGenerate an ephemeral key pair, returning the encoding of the public key.- Specified by:
generateEphemeralin interfaceTlsAgreement- Returns:
- a byte encoding of the public key.
- Throws:
java.io.IOException- in case of error.
-
receivePeerValue
public void receivePeerValue(byte[] peerValue) throws java.io.IOExceptionDescription copied from interface:TlsAgreementPass in the public key for the peer to the agreement calculator.- Specified by:
receivePeerValuein interfaceTlsAgreement- Parameters:
peerValue- a byte encoding of the peer public key.- Throws:
java.io.IOException- in case of error.
-
calculateSecret
public TlsSecret calculateSecret() throws java.io.IOException
Description copied from interface:TlsAgreementCalculate the agreed secret based on the calculator's current state.- Specified by:
calculateSecretin interfaceTlsAgreement- Returns:
- the calculated secret.
- Throws:
java.io.IOException- in case of error.
-
-