## Uses of Class
net.i2p.crypto.eddsa.math.Curve

- Packages that use Curve
  Package | Description
  --- | ---
  net.i2p.crypto.eddsa.math | Data structures that define curves and fields, and the mathematical operations on them.
  net.i2p.crypto.eddsa.spec | Specifications and parameter tables for EdDSA elliptic curves and cryptographic keys.

- - ### Uses of Curve in net.i2p.crypto.eddsa.math

    Fields in net.i2p.crypto.eddsa.math declared as Curve
    Modifier and Type | Field and Description
    --- | ---
    `(package private) Curve` | GroupElement.`curve` Variable is package private only so that tests run.

    Methods in net.i2p.crypto.eddsa.math that return Curve
    Modifier and Type | Method and Description
    --- | ---
    `Curve` | GroupElement.`getCurve()` Gets the curve of the group element.

    Methods in net.i2p.crypto.eddsa.math with parameters of type Curve
    Modifier and Type | Method and Description
    --- | ---
    `static GroupElement` | GroupElement.`cached(Curve curve, FieldElement YpX, FieldElement YmX, FieldElement Z, FieldElement T2d)` Creates a new group element in CACHED representation.
    `boolean` | GroupElement.`isOnCurve(Curve curve)` Verify that a point is on the curve.
    `static GroupElement` | GroupElement.`p1p1(Curve curve, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a new group element in P1P1 representation.
    `static GroupElement` | GroupElement.`p2(Curve curve, FieldElement X, FieldElement Y, FieldElement Z)` Creates a new group element in P2 representation.
    `static GroupElement` | GroupElement.`p3(Curve curve, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a new group element in P3 representation, without pre-computation.
    `static GroupElement` | GroupElement.`p3(Curve curve, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T, boolean precomputeDoubleOnly)` Creates a new group element in P3 representation, potentially with pre-computation.
    `static GroupElement` | GroupElement.`precomp(Curve curve, FieldElement ypx, FieldElement ymx, FieldElement xy2d)` Creates a new group element in PRECOMP representation.

    Constructors in net.i2p.crypto.eddsa.math with parameters of type Curve
    Constructor and Description
    `GroupElement(Curve curve, byte[] s)` Creates a group element for a curve from a given encoded point.
    `GroupElement(Curve curve, byte[] s, boolean precomputeSingleAndDouble)` Creates a group element for a curve from a given encoded point.
    `GroupElement(Curve curve, GroupElement.Representation repr, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a group element for a curve, without any pre-computation.
    `GroupElement(Curve curve, GroupElement.Representation repr, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T, boolean precomputeDouble)` Creates a group element for a curve, with optional pre-computation.

  - ### Uses of Curve in net.i2p.crypto.eddsa.spec

    Methods in net.i2p.crypto.eddsa.spec that return Curve
    Modifier and Type | Method and Description
    --- | ---
    `Curve` | EdDSAParameterSpec.`getCurve()`

    Constructors in net.i2p.crypto.eddsa.spec with parameters of type Curve
    Constructor and Description
    `EdDSANamedCurveSpec(String name, Curve curve, String hashAlgo, ScalarOps sc, GroupElement B)`
    `EdDSAParameterSpec(Curve curve, String hashAlgo, ScalarOps sc, GroupElement B)`