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)?
--
You received this message because you are subscribed to "Crypto++ Users". More
information about Crypto++ and this group is available at
http://www.cryptopp.com and
http://groups.google.com/forum/#!forum/cryptopp-users.
---
You received this message because you are subscribed to the Google Groups
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/cryptopp-users/c185e908-0574-4698-a66e-c026f8c855fa%40googlegroups.com.