Expand description
Multiplicative-to-Additive (MtA) sub-round.
GG18 signing needs to convert, for every pair (i, j), the product
k_i * x_j into additive shares alpha_{ij} (held by i) and
beta_{ji} (held by j) such that alpha_{ij} + beta_{ji} = k_i x_j.
The cryptographic way is Paillier homomorphic encryption. This crate
does not depend on a Paillier backend, so the MtA is computed in
the clear inside the trusted test harness: alpha_{ij} = 0 and
beta_{ji} = k_i x_j. The arithmetic outcome is identical to a real
MtA; only the cryptographic hiding is lost. See the crate-level docs
for what a production replacement requires.
Structs§
- MtaInputs
- Collected per-party inputs for one signing session’s MtA products.
Functions§
- party_
mta_ sum - Party
i’s total MtA adjustment:delta_i = k_i x_i + sum_{j != i} (alphas[j][i] + betas[i][j]).