Plume is needed to confirm your identity without disclosing your private data, i.e. zero-knowledge proof. Plume has another feature: you can send a message from a private group using special group message. For more details visit https://blog.aayushg.com/nullifier/.
[dependencies]
plume = { git = "https://github.com/distributed-lab/noir-plume", tag = "v1.0.0", directory = "crates/plume"}
use plume::plume_v1;
...
plume_v1(msg, c, s, pk, nullifier);
Or in case you prefer 2 version:
use plume::plume_v2;
...
plume_v2(msg, c, s, pk, nullifier);
Check out how to generate proofs with PLUME in either crates/use_v1
or crates/use_v2
.
For proving data generation, see our SageMath
implementation.
We have provided information regarding different computational statistics such as constraints amount and time for various activities, see Benchmark.md
In order to bring in PLUME
to Noir
, we needed to implement secp256k1_XMD:SHA-256_SSWU_RO_
hash-to-curve algorithm, ergo now it is available in Noir
ecosystem!
Based on this description.
Tested using this data.