| Interface | Description |
|---|---|
| CurveProcessor |
Process curve specific functions
|
| MapToCurve |
Interface for Map to Curve
|
| MessageExpansion |
The MessageExpansion interface defines a contract for expanding a message.
|
| SqrtRatioCalculator |
Interface for a calculator of SqrtRatio
|
| Class | Description |
|---|---|
| H2cUtils |
Utility functions for hash 2 curve
This implementation follows the straight-line, branch-free algorithmic structure required by RFC
9380, ensuring that all code paths perform the same sequence of mathematical operations
regardless of input values.
|
| HashToEllipticCurve |
Main class for implementing hash to elliptic curve according to RFC 9380
Steps: 1. u = hash_to_field(msg, 2) 2. |
| HashToField |
Generic implementation of hash to field
This implementation is restricted to hashing to a field where the field being hashed to is
derived from an Elliptic curve
The HashToField function can be used to hash to any field such as a scalar field (group order)
This implementation is not suitable for such cases as described in more detail in the
GenericOPRFHashToScalar function.
|
| OPRFHashToScalar |
Generic implementation of HashToScalar as used in OPRF (RFC 9497).
|
| Enum | Description |
|---|---|
| HashToCurveProfile |
Supported profiles for instantiating an instance of HashToEllipticCurve.
|