Merge branch 'ped92-generics' into ccs08
This commit is contained in:
commit
8b2f837051
19
src/ped92.rs
19
src/ped92.rs
|
@ -4,7 +4,7 @@ use pairing::{Engine, CurveProjective, CurveAffine};
|
|||
use ff::Rand;
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct PublicKey<E: Engine> {
|
||||
pub struct CSPublicKey<E: Engine> {
|
||||
g: E::G2,
|
||||
h: E::G2,
|
||||
}
|
||||
|
@ -16,11 +16,11 @@ pub struct Commitment<E: Engine> {
|
|||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct CSParams<E: Engine> {
|
||||
pub struct CSMultiPublicKey<E: Engine> {
|
||||
pub pub_bases: Vec<E::G2>
|
||||
}
|
||||
|
||||
//impl<E: Engine> fmt::Display for PublicKey<E> {
|
||||
//impl<E: Engine> fmt::Display for CSPublicKey<E> {
|
||||
// fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
// let g_vec: Vec<u8> = encode(&self.g, Infinite).unwrap();
|
||||
// let h_vec: Vec<u8> = encode(&self.h, Infinite).unwrap();
|
||||
|
@ -55,14 +55,14 @@ pub struct CSParams<E: Engine> {
|
|||
// }
|
||||
//}
|
||||
|
||||
impl<E: Engine> PublicKey<E> {
|
||||
impl<E: Engine> CSPublicKey<E> {
|
||||
/*
|
||||
Implements the setup algorithm for the Pedersen92 commitment scheme
|
||||
*/
|
||||
pub fn setup<R: Rng>(rng: &mut R) -> Self {
|
||||
let g = E::G2::rand(rng);
|
||||
let h = E::G2::rand(rng);
|
||||
let pk = PublicKey { g, h };
|
||||
let pk = CSPublicKey { g, h };
|
||||
return pk;
|
||||
}
|
||||
|
||||
|
@ -111,8 +111,7 @@ decommit(pk, cm, msg) -> bool where
|
|||
}
|
||||
|
||||
|
||||
|
||||
impl<E: Engine> CSParams<E> {
|
||||
impl<E: Engine> CSMultiPublicKey<E> {
|
||||
/*
|
||||
Implements the setup algorithm for the Pedersen92 commitment scheme over
|
||||
a vector of messages.
|
||||
|
@ -122,7 +121,7 @@ impl<E: Engine> CSParams<E> {
|
|||
for i in 0..len {
|
||||
p.push(E::G2::rand(rng));
|
||||
}
|
||||
return CSParams { pub_bases: p };
|
||||
return CSMultiPublicKey { pub_bases: p };
|
||||
}
|
||||
|
||||
pub fn commit<R: Rng>(&self, rng: &mut R, x: &Vec<E::Fr>, r: E::Fr) -> Commitment<E> {
|
||||
|
@ -163,7 +162,7 @@ mod tests {
|
|||
#[test]
|
||||
fn commit_one_message_works() {
|
||||
let rng = &mut thread_rng();
|
||||
let pk = PublicKey::<Bls12>::setup(rng);
|
||||
let pk = CSPublicKey::<Bls12>::setup(rng);
|
||||
|
||||
let m1 = Fr::rand(rng);
|
||||
let mut m2 = m1.clone();
|
||||
|
@ -179,7 +178,7 @@ mod tests {
|
|||
fn commit_n_message_works() {
|
||||
let rng = &mut thread_rng();
|
||||
let len = 3;
|
||||
let csp = CSParams::<Bls12>::setup_gen_params(rng, len);
|
||||
let csp = CSMultiPublicKey::<Bls12>::setup_gen_params(rng, len);
|
||||
|
||||
let mut m: Vec<Fr> = Vec::new();
|
||||
for i in 0..len {
|
||||
|
|
Loading…
Reference in New Issue