<PackageReference Include="BouncyCastle.Cryptography" Version="2.8.0-beta.349" />

Org.BouncyCastle.Math.EC.ECPoint

public abstract class ECPoint
Base class for points on elliptic curves.
protected static readonly ECFieldElement[] EMPTY_ZS

public virtual ECFieldElement AffineXCoord { get; }

Returns the affine x-coordinate after checking that this point is normalized.

public virtual ECFieldElement AffineYCoord { get; }

Returns the affine y-coordinate after checking that this point is normalized.

public virtual ECCurve Curve { get; }

protected virtual int CurveCoordinateSystem { get; }

public bool IsInfinity { get; }

public virtual ECFieldElement XCoord { get; }

Returnss the x-coordinate.

public virtual ECFieldElement YCoord { get; }

Returnss the y-coordinate.

protected static ECFieldElement[] GetInitialZCoords(ECCurve curve)

public abstract ECPoint Add(ECPoint b)

protected virtual void CheckNormalized()

protected abstract ECPoint Detach()

public abstract void EncodeTo(bool compressed, byte[] buf, int off)

public abstract void EncodeTo(bool compressed, Span<byte> buf)

public virtual bool Equals(ECPoint other)

public virtual byte[] GetEncoded()

public abstract byte[] GetEncoded(bool compressed)

public abstract int GetEncodedLength(bool compressed)

public virtual ECFieldElement GetZCoord(int index)

public virtual ECFieldElement[] GetZCoords()

public virtual bool IsNormalized()

public bool IsValid()

public abstract ECPoint Multiply(BigInteger b)

public abstract ECPoint Negate()

public virtual ECPoint Normalize()

Normalization ensures that any projective coordinate is 1, and therefore that the x, y coordinates reflect those of the equivalent point in an affine coordinate system.

protected abstract bool SatisfiesCurveEquation()

protected virtual bool SatisfiesOrder()

public virtual ECPoint ScaleX(ECFieldElement scale)

public virtual ECPoint ScaleXNegateY(ECFieldElement scale)

public virtual ECPoint ScaleY(ECFieldElement scale)

public virtual ECPoint ScaleYNegateX(ECFieldElement scale)

public abstract ECPoint Subtract(ECPoint b)

public virtual ECPoint ThreeTimes()

public virtual ECPoint TimesPow2(int e)

public abstract ECPoint Twice()

public virtual ECPoint TwicePlus(ECPoint b)