org.bouncycastle.crypto.agreement
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.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DHAgreement
public DHAgreement()
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.