de.flexiprovider.ec
Class ECSVDPDH

java.lang.Object
  |
  +--javax.crypto.KeyAgreementSpi
        |
        +--de.flexiprovider.api.KeyAgreement
              |
              +--de.flexiprovider.ec.ECSVDPDHC
                    |
                    +--de.flexiprovider.ec.ECSVDPDH

public class ECSVDPDH
extends ECSVDPDHC

ECSVDPDH provides the implementation for key exchange with the Diffie Hellman algorithm on elliptic curves over the general field with p elements where p is an odd prime number.

This class implements the ECSVDP-DH primitive from IEEE 1363, i.e. the Diffie Hellman algorithm without co-factor multiplication.

Usage: kagA and kagB represent the parties trying to establish a shared secret key, each with a private and public key. The following steps have to be performed:

 KeyAgreement kagA = KeyAgreement.getInstance("ECDH", "FlexiEC");
 kagA.init(ecprivA, params, random);
 KeyAgreement kagB = KeyAgreement.getInstance("ECDH", "FlexiEC");
 kagB.init(ecprivB, random);
 ECSecretKey secrA = (ECSecretKey) kagA.doPhase(ecpubB, true);
 ECSecretKey secrB = (ECSecretKey) kagB.doPhase(ecpubA, true);
 

Author:
Jochen Hechler, Marcus Stögbauer

Fields inherited from class de.flexiprovider.ec.ECSVDPDHC
withCoFactor
 
Constructor Summary
ECSVDPDH()
           
 
Methods inherited from class de.flexiprovider.ec.ECSVDPDHC
doPhase, generateSecret, generateSecret, generateSecret, init, init
 
Methods inherited from class de.flexiprovider.api.KeyAgreement
engineDoPhase, engineGenerateSecret, engineGenerateSecret, engineGenerateSecret, engineInit, engineInit
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ECSVDPDH

public ECSVDPDH()