Class SimplifiedShallueVanDeWoestijneMapToCurve

  • All Implemented Interfaces:
    MapToCurve

    public class SimplifiedShallueVanDeWoestijneMapToCurve
    extends java.lang.Object
    implements MapToCurve
    Implements the Simplified Shallue van de Woestijne Map to curve according to section 6.6.2 of RFC 9380 This is the straight-line implementation optimized for Weierstrass curves as defined in section F.2.
    • Constructor Summary

      Constructors 
      Constructor Description
      SimplifiedShallueVanDeWoestijneMapToCurve​(ECCurve curve, java.math.BigInteger z)
      Constructs an instance of the SimplifiedShallueVanDeWoestijneMapToCurve mapping mechanism for mapping values onto a Weierstrass elliptic curve.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ECPoint process​(java.math.BigInteger u)
      Processes the given input value to map it to an elliptic curve point using the Shallue-van de Woestijne algorithm, optimized for Weierstrass curves.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SimplifiedShallueVanDeWoestijneMapToCurve

        public SimplifiedShallueVanDeWoestijneMapToCurve​(ECCurve curve,
                                                         java.math.BigInteger z)
        Constructs an instance of the SimplifiedShallueVanDeWoestijneMapToCurve mapping mechanism for mapping values onto a Weierstrass elliptic curve. This implementation is based on section 6.6.2 of RFC 9380 and optimizations defined in section F.2.
        Parameters:
        curve - the elliptic curve to which the mapping will be applied; must conform to the Weierstrass form
        z - a non-zero constant value used as a parameter in the mapping algorithm
    • Method Detail

      • process

        public ECPoint process​(java.math.BigInteger u)
        Processes the given input value to map it to an elliptic curve point using the Shallue-van de Woestijne algorithm, optimized for Weierstrass curves. This implementation adheres to the specifications outlined in RFC 9380, section 6.6.2, and section F.2 for efficient computation.

        The method computes the x and y coordinates for the point on the elliptic curve, using modular arithmetic and auxiliary functions for square root computation and conditional assignments.

        Specified by:
        process in interface MapToCurve
        Parameters:
        u - the input value to be mapped to a point on the elliptic curve
        Returns:
        the computed point on the elliptic curve represented as an ECPoint