-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
As far as I can see, there is currently no public interface for
Here are some applications that need e.g. (scalar) point multiplications:
- Computing Pedersen Commitments over Elliptic Curves, one needs to compute
$Com(s, r) := sA + rB$ where$s \in \mathbb{F}_p$ is a (small) message, and$r \in \mathbb{F}_p$ is for blinding. - For longer messages
$(m = s_1 || s_2 || ... || s_n)$ , one computes Pedersen Commitments as$Com(m, r) := s_1A_1 + s_2A_2 + ... + s_nA_n + rB$ - Implementing a Seed-Homomorphic PRG, one selects n random points
$P_1 \cdots P_n$ as fixed system parameters, and then on input$s \in \mathbb{F}_p$ , one computes$PRG(s) := (sP_1, sP_2, \cdots, sP_n)$ . Of course, precomputation for those (fixed) points would be a good idea too, since the$P_i$ are being reused all the time for many different seeds$s$ .
While Seed-Homomorphic PRGs are not that common (but useful), Pedersen Commitments are hugely popular. In general, computing
Sadly, functions like src:edwards255.c:point_multiplication_ed25519() are static for internal use only, and are hidden deeply inside the bowels of the library.
Metadata
Metadata
Assignees
Labels
No labels