Class ECPoint

    • Method Detail

      • satisfiesCurveEquation

        protected abstract boolean satisfiesCurveEquation()
      • satisfiesOrder

        protected boolean satisfiesOrder()
      • getDetachedPoint

        public final ECPoint getDetachedPoint()
      • getCurve

        public ECCurve getCurve()
      • detach

        protected abstract ECPoint detach()
      • getCurveCoordinateSystem

        protected int getCurveCoordinateSystem()
      • getAffineXCoord

        public ECFieldElement getAffineXCoord()
        Returns the affine x-coordinate after checking that this point is normalized.
        Returns:
        The affine x-coordinate of this point
        Throws:
        java.lang.IllegalStateException - if the point is not normalized
      • getAffineYCoord

        public ECFieldElement getAffineYCoord()
        Returns the affine y-coordinate after checking that this point is normalized
        Returns:
        The affine y-coordinate of this point
        Throws:
        java.lang.IllegalStateException - if the point is not normalized
      • getXCoord

        public ECFieldElement getXCoord()
        Returns the x-coordinate. Caution: depending on the curve's coordinate system, this may not be the same value as in an affine coordinate system; use normalize() to get a point where the coordinates have their affine values, or use getAffineXCoord() if you expect the point to already have been normalized.
        Returns:
        the x-coordinate of this point
      • getYCoord

        public ECFieldElement getYCoord()
        Returns the y-coordinate. Caution: depending on the curve's coordinate system, this may not be the same value as in an affine coordinate system; use normalize() to get a point where the coordinates have their affine values, or use getAffineYCoord() if you expect the point to already have been normalized.
        Returns:
        the y-coordinate of this point
      • checkNormalized

        protected void checkNormalized()
      • isNormalized

        public boolean isNormalized()
      • normalize

        public 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.
        Returns:
        a new ECPoint instance representing the same point, but with normalized coordinates
      • isInfinity

        public boolean isInfinity()
      • isValid

        public boolean isValid()
      • equals

        public boolean equals​(ECPoint other)
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getEncoded

        public byte[] getEncoded()
      • getEncoded

        public byte[] getEncoded​(boolean compressed)
        Get an encoding of the point value, optionally in compressed format.
        Parameters:
        compressed - whether to generate a compressed point encoding.
        Returns:
        the point encoding
      • getCompressionYTilde

        protected abstract boolean getCompressionYTilde()
      • negate

        public abstract ECPoint negate()
      • timesPow2

        public ECPoint timesPow2​(int e)
      • twice

        public abstract ECPoint twice()
      • threeTimes

        public ECPoint threeTimes()
      • multiply

        public ECPoint multiply​(java.math.BigInteger k)
        Multiplies this ECPoint by the given number.
        Parameters:
        k - The multiplicator.
        Returns:
        k * this.