Class SimplifiedShallueVanDeWoestijneMapToCurve
- java.lang.Object
-
- org.bouncycastle.crypto.hash2curve.impl.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 ECPointprocess(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.
-
-
-
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 formz- 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:
processin interfaceMapToCurve- 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
-
-