1package org.bouncycastle.crypto;
2
3import java.math.BigInteger;
4
5/**
6 * The basic interface that basic Diffie-Hellman implementations
7 * conforms to.
8 */
9public interface BasicAgreement
10{
11    /**
12     * initialise the agreement engine.
13     */
14    public void init(CipherParameters param);
15
16    /**
17     * given a public key from a given party calculate the next
18     * message in the agreement sequence.
19     */
20    public BigInteger calculateAgreement(CipherParameters pubKey);
21}
22