Class DHAgreement
- java.lang.Object
-
- org.bouncycastle.crypto.agreement.DHAgreement
-
public class DHAgreement extends java.lang.Object
a Diffie-Hellman key exchange engine.note: This uses MTI/A0 key agreement in order to make the key agreement secure against passive attacks. If you're doing Diffie-Hellman and both parties have long term public keys you should look at using this. For further information have a look at RFC 2631.
It's possible to extend this to more than two parties as well, for the moment that is left as an exercise for the reader.
-
-
Constructor Summary
Constructors Constructor Description DHAgreement()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.math.BigInteger
calculateAgreement(DHPublicKeyParameters pub, java.math.BigInteger message)
given a message from a given party and the corresponding public key, calculate the next message in the agreement sequence.java.math.BigInteger
calculateMessage()
calculate our initial message.void
init(CipherParameters param)
-
-
-
Method Detail
-
init
public void init(CipherParameters param)
-
calculateMessage
public java.math.BigInteger calculateMessage()
calculate our initial message.
-
calculateAgreement
public java.math.BigInteger calculateAgreement(DHPublicKeyParameters pub, java.math.BigInteger message)
given a message from a given party and the corresponding public key, calculate the next message in the agreement sequence. In this case this will represent the shared secret.
-
-