1 unstable release
0.1.0 | Sep 29, 2024 |
---|
#670 in Cryptography
26 downloads per month
8KB
160 lines
commit-groth09
A multiplicatively homomorphic commitment scheme, as described in Homomorphic Trapdoor Commitments to Group Elements, implemented using BLS12-381.
Basic usage
Note: committing to bytes is not yet implemented!
fn commit_to_value() -> (Commitment, Randomness) {
let commitment_key = CommitmentKey::<1>::generate();
let value = Values::new([G2Affine::generator()]);
let (commitment, randomness) = commitment_key.commit(&value);
}
lib.rs
:
Homomorphic Trapdoor Commitments to Group Elements as described by Jens Groth.
This implementation uses BLS12-381 for the groups and pairing.
Dependencies
~1MB
~18K SLoC