What is difference between exponentiation and multiplication in elliptic curves?

12 views
Skip to first unread message

Satyanarayana Vusirikala

unread,
Jun 1, 2019, 10:00:38 AM6/1/19
to Crypto++ Users
I was looking to elliptic curve manual at https://cryptopp.com/wiki/Elliptic_Curve_Cryptography
In this, they mention "The code below shows you how to exponentiate, multiple and add using the lower level primitives over secp256r1."

typedef DL_GroupParameters_EC<ECP> GroupParameters;
    typedef DL_GroupParameters_EC<ECP>::Element Element;

    AutoSeededRandomPool prng;    
    GroupParameters group;
    group.Initialize(ASN1::secp256r1());

    // private key
    Integer x(prng, Integer::One(), group.GetMaxExponent());
        
    // public key
    Element y = group.ExponentiateBase(x);
    
    // element addition
    Element u = group.GetCurve().Add(y, ECP::Point(2,3));

    // scalar multiplication
    Element v = group.GetCurve().ScalarMultiply(u, Integer::Two());

What is the difference between exponentiation and multiplication? I am also confused as one operation is done on the curve and the operation is done in the group.
After creating group variable, is there a function to get the base point (I want to the base to which x is being exponentiated)? 

Reply all
Reply to author
Forward
0 new messages