org.gudy.bouncycastle.jce.provider
Class JCEECDHKeyAgreement
java.lang.Object
javax.crypto.KeyAgreementSpi
org.gudy.bouncycastle.jce.provider.JCEECDHKeyAgreement
- Direct Known Subclasses:
- JCEECDHKeyAgreement.DH
public class JCEECDHKeyAgreement
- extends javax.crypto.KeyAgreementSpi
Diffie-Hellman key agreement using elliptic curve keys, ala IEEE P1363
both the simple one, and the simple one with cofactors are supported.
Method Summary |
java.security.Key |
doPhase(java.security.Key key,
boolean lastPhase)
|
protected java.security.Key |
engineDoPhase(java.security.Key key,
boolean lastPhase)
|
protected byte[] |
engineGenerateSecret()
|
protected int |
engineGenerateSecret(byte[] sharedSecret,
int offset)
|
protected javax.crypto.SecretKey |
engineGenerateSecret(java.lang.String algorithm)
|
protected void |
engineInit(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params,
java.security.SecureRandom random)
|
protected void |
engineInit(java.security.Key key,
java.security.SecureRandom random)
|
byte[] |
generateSecret()
|
void |
init(java.security.Key key)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JCEECDHKeyAgreement
protected JCEECDHKeyAgreement(BasicAgreement agreement)
doPhase
public java.security.Key doPhase(java.security.Key key,
boolean lastPhase)
throws java.security.InvalidKeyException,
java.lang.IllegalStateException
- Throws:
java.security.InvalidKeyException
java.lang.IllegalStateException
engineDoPhase
protected java.security.Key engineDoPhase(java.security.Key key,
boolean lastPhase)
throws java.security.InvalidKeyException,
java.lang.IllegalStateException
- Specified by:
engineDoPhase
in class javax.crypto.KeyAgreementSpi
- Throws:
java.security.InvalidKeyException
java.lang.IllegalStateException
generateSecret
public byte[] generateSecret()
throws java.lang.IllegalStateException
- Throws:
java.lang.IllegalStateException
engineGenerateSecret
protected byte[] engineGenerateSecret()
throws java.lang.IllegalStateException
- Specified by:
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
- Throws:
java.lang.IllegalStateException
engineGenerateSecret
protected int engineGenerateSecret(byte[] sharedSecret,
int offset)
throws java.lang.IllegalStateException,
javax.crypto.ShortBufferException
- Specified by:
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
- Throws:
java.lang.IllegalStateException
javax.crypto.ShortBufferException
engineGenerateSecret
protected javax.crypto.SecretKey engineGenerateSecret(java.lang.String algorithm)
- Specified by:
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
init
public void init(java.security.Key key)
throws java.security.InvalidKeyException,
java.security.InvalidAlgorithmParameterException
- Throws:
java.security.InvalidKeyException
java.security.InvalidAlgorithmParameterException
engineInit
protected void engineInit(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params,
java.security.SecureRandom random)
throws java.security.InvalidKeyException,
java.security.InvalidAlgorithmParameterException
- Specified by:
engineInit
in class javax.crypto.KeyAgreementSpi
- Throws:
java.security.InvalidKeyException
java.security.InvalidAlgorithmParameterException
engineInit
protected void engineInit(java.security.Key key,
java.security.SecureRandom random)
throws java.security.InvalidKeyException
- Specified by:
engineInit
in class javax.crypto.KeyAgreementSpi
- Throws:
java.security.InvalidKeyException