Expand description
Private Accumulator Proof Delegation.
This library provides implementations of cryptographic accumulators with support for privacy-preserving (blinded) proof updates.
§Cargo features
rsa(default) — RSA-group and class-group based accumulators.bilinear(default) — KZG / bilinear-pairing based accumulator.class-group— class-group (class_group/curv-kzen) backend for the RSA-style accumulator. Off by default becausecurvbrings a number of transitive dependencies.serde—serde::Serialize/serde::Deserializeimplementations for all RSA proof types. Bilinear proof types always implementark_serialize::CanonicalSerialize/CanonicalDeserialize.
§Example
use num_bigint::BigUint;
use private_accumulator_proof_delegation::{rsa_group::RsaGroup, RsaAccumulator};
let mut acc = RsaAccumulator::<RsaGroup>::setup();
let ep = acc.add_raw(&BigUint::from(7u32));
let proof = acc.mem_proof_create_raw(&ep).unwrap();
assert!(acc.mem_ver_raw(&proof, &ep));Re-exports§
pub use error::AccumulatorError;pub use error::AccumulatorResult;pub use traits::Accumulator;pub use traits::Group;pub use traits::PrivatelyDelegatableAccumulator;pub use rsa_accumulator::RsaAccumulator;pub use groups::rsa_group;pub use groups::bilinear_group;pub use bilinear_accumulator::BilinearAccumulator;pub use rsa_accumulator::RsaBlindedMembershipProof;pub use rsa_accumulator::RsaBlindedNonMembershipProof;pub use rsa_accumulator::RsaDleqProof;pub use rsa_accumulator::RsaMembershipProof;pub use rsa_accumulator::RsaNizkAux;pub use rsa_accumulator::RsaNonMembershipProof;pub use rsa_accumulator::RsaUpdatedBlindedMembershipProof;pub use rsa_accumulator::RsaUpdatedBlindedNonMembershipProof;pub use bilinear_accumulator::MembershipProof as BilinearMembershipProof;pub use bilinear_accumulator::NonMembershipProof as BilinearNonMembershipProof;
Modules§
- bilinear_
accumulator - error
- Error types returned by fallible accumulator operations.
- groups
- math
- nizk
- rsa_
accumulator - traits