Class EllipticCurve
java.lang.Object
org.episteme.core.mathematics.cryptography.EllipticCurve
Elliptic Curve Cryptography (ECC).
More efficient than RSA - same security with smaller keys. Based on algebraic structure of elliptic curves over finite fields.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classElliptic curve parameters: y² = x³ + ax + b (mod p)static classGenerates ECDH key pair.static classPoint on elliptic curve y² = x³ + ax + b (mod p) -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic EllipticCurve.Pointadd(EllipticCurve.Point P, EllipticCurve.Point Q, EllipticCurve.Curve curve) Point addition on elliptic curve.static EllipticCurve.PointcomputeSharedSecret(BigInteger privateKey, EllipticCurve.Point otherPublicKey, EllipticCurve.Curve curve) ECDH shared secret computation.static EllipticCurve.PointPoint doubling: P + P = 2Pstatic EllipticCurve.KeyPairGenerate key pair for ECDH.static EllipticCurve.Pointmultiply(BigInteger k, EllipticCurve.Point P, EllipticCurve.Curve curve) Scalar multiplication: k * P (adds P to itself k times).
-
Constructor Details
-
EllipticCurve
public EllipticCurve()
-
-
Method Details
-
add
public static EllipticCurve.Point add(EllipticCurve.Point P, EllipticCurve.Point Q, EllipticCurve.Curve curve) Point addition on elliptic curve. -
doublePoint
Point doubling: P + P = 2P -
multiply
public static EllipticCurve.Point multiply(BigInteger k, EllipticCurve.Point P, EllipticCurve.Curve curve) Scalar multiplication: k * P (adds P to itself k times). Uses double-and-add algorithm for efficiency. -
generateKeyPair
Generate key pair for ECDH.
-