diff --git a/examples/main_pod_points.rs b/examples/main_pod_points.rs index 4312f2ca..d7679f68 100644 --- a/examples/main_pod_points.rs +++ b/examples/main_pod_points.rs @@ -46,14 +46,14 @@ fn main() -> Result<(), Box> { let game_sk = SecretKey::new_rand(); let game_pk = game_sk.public_key(); - let mut game_signer = Signer(game_sk); + let game_signer = Signer(game_sk); // Build 2 signed pods where the game assigns points to a player that has completed a level. let mut builder = SignedPodBuilder::new(¶ms); builder.insert("player", "Alice"); builder.insert("level", 1); builder.insert("points", 3512); - let pod_points_lvl_1 = builder.sign(&mut game_signer)?; + let pod_points_lvl_1 = builder.sign(&game_signer)?; pod_points_lvl_1.verify()?; println!("# pod_points_lvl_1:\n{}", pod_points_lvl_1); @@ -61,7 +61,7 @@ fn main() -> Result<(), Box> { builder.insert("player", "Alice"); builder.insert("level", 2); builder.insert("points", 5771); - let pod_points_lvl_2 = builder.sign(&mut game_signer)?; + let pod_points_lvl_2 = builder.sign(&game_signer)?; pod_points_lvl_2.verify()?; println!("# pod_points_lvl_2:\n{}", pod_points_lvl_2); diff --git a/examples/signed_pod.rs b/examples/signed_pod.rs index 03db74cd..ec84b4d0 100644 --- a/examples/signed_pod.rs +++ b/examples/signed_pod.rs @@ -17,7 +17,7 @@ fn main() -> Result<(), Box> { let pk = sk.public_key(); println!("Public key: {}\n", pk); - let mut signer = Signer(sk); + let signer = Signer(sk); // Build the signed pod let mut builder = SignedPodBuilder::new(¶ms); @@ -35,7 +35,7 @@ fn main() -> Result<(), Box> { ); // Sign the pod and verify it - let pod = builder.sign(&mut signer)?; + let pod = builder.sign(&signer)?; pod.verify()?; println!("{}", pod); diff --git a/src/backends/plonky2/circuits/signedpod.rs b/src/backends/plonky2/circuits/signedpod.rs index ee5a1e2d..e803cdcf 100644 --- a/src/backends/plonky2/circuits/signedpod.rs +++ b/src/backends/plonky2/circuits/signedpod.rs @@ -219,8 +219,8 @@ pub mod tests { pod.insert("dateOfBirth", 1169909384); pod.insert("socialSecurityNumber", "G2121210"); let sk = SecretKey::new_rand(); - let mut signer = Signer(sk); - let pod = pod.sign(&mut signer).unwrap(); + let signer = Signer(sk); + let pod = pod.sign(&signer).unwrap(); let signed_pod = (pod.pod as Box).downcast::().unwrap(); // use the pod in the circuit diff --git a/src/backends/plonky2/mainpod/mod.rs b/src/backends/plonky2/mainpod/mod.rs index a962467d..db0eb34c 100644 --- a/src/backends/plonky2/mainpod/mod.rs +++ b/src/backends/plonky2/mainpod/mod.rs @@ -739,12 +739,12 @@ pub mod tests { let (gov_id_builder, pay_stub_builder, sanction_list_builder) = zu_kyc_sign_pod_builders(¶ms); - let mut signer = Signer(SecretKey(BigUint::one())); - let gov_id_pod = gov_id_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(2u64.into())); - let pay_stub_pod = pay_stub_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(3u64.into())); - let sanction_list_pod = sanction_list_builder.sign(&mut signer)?; + let signer = Signer(SecretKey(BigUint::one())); + let gov_id_pod = gov_id_builder.sign(&signer)?; + let signer = Signer(SecretKey(2u64.into())); + let pay_stub_pod = pay_stub_builder.sign(&signer)?; + let signer = Signer(SecretKey(3u64.into())); + let sanction_list_pod = sanction_list_builder.sign(&signer)?; let kyc_builder = zu_kyc_pod_builder( ¶ms, &vd_set, @@ -753,8 +753,8 @@ pub mod tests { &sanction_list_pod, )?; - let mut prover = Prover {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms)?; + let prover = Prover {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms)?; crate::measure_gates_print!(); let pod = (kyc_pod.pod as Box).downcast::().unwrap(); @@ -778,8 +778,8 @@ pub mod tests { gov_id_builder.insert("idNumber", "4242424242"); gov_id_builder.insert("dateOfBirth", 1169909384); gov_id_builder.insert("socialSecurityNumber", "G2121210"); - let mut signer = Signer(SecretKey(42u64.into())); - let gov_id = gov_id_builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(42u64.into())); + let gov_id = gov_id_builder.sign(&signer).unwrap(); let now_minus_18y: i64 = 1169909388; let mut kyc_builder = frontend::MainPodBuilder::new(¶ms, &vd_set); kyc_builder.add_signed_pod(&gov_id); @@ -791,8 +791,8 @@ pub mod tests { println!(); // Mock - let mut prover = MockProver {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms).unwrap(); let pod = (kyc_pod.pod as Box) .downcast::() .unwrap(); @@ -800,8 +800,8 @@ pub mod tests { println!("{:#}", pod); // Real - let mut prover = Prover {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms).unwrap(); + let prover = Prover {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms).unwrap(); let pod = (kyc_pod.pod as Box).downcast::().unwrap(); pod.verify().unwrap() } @@ -832,8 +832,8 @@ pub mod tests { let pod_builder = frontend::MainPodBuilder::new(¶ms, &vd_set); // Mock - let mut prover = MockProver {}; - let kyc_pod = pod_builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let kyc_pod = pod_builder.prove(&prover, ¶ms).unwrap(); let pod = (kyc_pod.pod as Box) .downcast::() .unwrap(); @@ -841,8 +841,8 @@ pub mod tests { println!("{:#}", pod); // Real - let mut prover = Prover {}; - let kyc_pod = pod_builder.prove(&mut prover, ¶ms).unwrap(); + let prover = Prover {}; + let kyc_pod = pod_builder.prove(&prover, ¶ms).unwrap(); let pod = (kyc_pod.pod as Box).downcast::().unwrap(); pod.verify().unwrap() } @@ -853,27 +853,23 @@ pub mod tests { println!("{:#?}", params); let vd_set = &*DEFAULT_VD_SET; - let mut alice = Signer(SecretKey(1u32.into())); - let mut bob = Signer(SecretKey(2u32.into())); + let alice = Signer(SecretKey(1u32.into())); + let bob = Signer(SecretKey(2u32.into())); let charlie = Signer(SecretKey(3u32.into())); // Alice attests that she is ETH friends with Bob and Bob // attests that he is ETH friends with Charlie. - let alice_attestation = - attest_eth_friend(¶ms, &mut alice, Value::from(bob.public_key())); - let bob_attestation = - attest_eth_friend(¶ms, &mut bob, Value::from(charlie.public_key())); + let alice_attestation = attest_eth_friend(¶ms, &alice, Value::from(bob.public_key())); + let bob_attestation = attest_eth_friend(¶ms, &bob, Value::from(charlie.public_key())); let helper = EthDosHelper::new(¶ms, vd_set, false, Value::from(alice.public_key()))?; - let mut prover = Prover {}; - let dist_1 = helper - .dist_1(&alice_attestation)? - .prove(&mut prover, ¶ms)?; + let prover = Prover {}; + let dist_1 = helper.dist_1(&alice_attestation)?.prove(&prover, ¶ms)?; crate::measure_gates_print!(); dist_1.pod.verify()?; let dist_2 = helper .dist_n_plus_1(&dist_1, &bob_attestation)? - .prove(&mut prover, ¶ms)?; + .prove(&prover, ¶ms)?; Ok(dist_2.pod.verify()?) } @@ -920,12 +916,12 @@ pub mod tests { let _st3 = pod_builder.priv_op(op!(custom, cpb_and.clone(), st0, st2))?; - let mut prover = MockProver {}; - let pod = pod_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let pod = pod_builder.prove(&prover, ¶ms)?; assert!(pod.pod.verify().is_ok()); - let mut prover = Prover {}; - let pod = pod_builder.prove(&mut prover, ¶ms)?; + let prover = Prover {}; + let pod = pod_builder.prove(&prover, ¶ms)?; crate::measure_gates_print!(); let pod = (pod.pod as Box).downcast::().unwrap(); @@ -948,8 +944,8 @@ pub mod tests { builder.pub_op(op!(set_contains, st, 1))?; - let mut prover = Prover {}; - let proof = builder.prove(&mut prover, ¶ms).unwrap(); + let prover = Prover {}; + let proof = builder.prove(&prover, ¶ms).unwrap(); let pod = (proof.pod as Box).downcast::().unwrap(); Ok(pod.verify()?) } diff --git a/src/backends/plonky2/mock/mainpod.rs b/src/backends/plonky2/mock/mainpod.rs index 7d7b7608..fa9f8cf3 100644 --- a/src/backends/plonky2/mock/mainpod.rs +++ b/src/backends/plonky2/mock/mainpod.rs @@ -441,12 +441,12 @@ pub mod tests { let vd_set = &*MOCK_VD_SET; let (gov_id_builder, pay_stub_builder, sanction_list_builder) = zu_kyc_sign_pod_builders(¶ms); - let mut signer = Signer(SecretKey(1u32.into())); - let gov_id_pod = gov_id_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(2u32.into())); - let pay_stub_pod = pay_stub_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(3u32.into())); - let sanction_list_pod = sanction_list_builder.sign(&mut signer)?; + let signer = Signer(SecretKey(1u32.into())); + let gov_id_pod = gov_id_builder.sign(&signer)?; + let signer = Signer(SecretKey(2u32.into())); + let pay_stub_pod = pay_stub_builder.sign(&signer)?; + let signer = Signer(SecretKey(3u32.into())); + let sanction_list_pod = sanction_list_builder.sign(&signer)?; let kyc_builder = zu_kyc_pod_builder( ¶ms, &vd_set, @@ -455,8 +455,8 @@ pub mod tests { &sanction_list_pod, )?; - let mut prover = MockProver {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms)?; let pod = (kyc_pod.pod as Box) .downcast::() .unwrap(); @@ -471,8 +471,8 @@ pub mod tests { fn test_mock_main_great_boy() -> frontend::Result<()> { let (params, great_boy_builder) = great_boy_pod_full_flow()?; - let mut prover = MockProver {}; - let great_boy_pod = great_boy_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let great_boy_pod = great_boy_builder.prove(&prover, ¶ms)?; let pod = (great_boy_pod.pod as Box) .downcast::() .unwrap(); @@ -488,8 +488,8 @@ pub mod tests { fn test_mock_main_tickets() -> frontend::Result<()> { let params = middleware::Params::default(); let tickets_builder = tickets_pod_full_flow()?; - let mut prover = MockProver {}; - let proof_pod = tickets_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let proof_pod = tickets_builder.prove(&prover, ¶ms)?; let pod = (proof_pod.pod as Box) .downcast::() .unwrap(); diff --git a/src/backends/plonky2/signedpod.rs b/src/backends/plonky2/signedpod.rs index 684d3cc2..8d890e05 100644 --- a/src/backends/plonky2/signedpod.rs +++ b/src/backends/plonky2/signedpod.rs @@ -27,7 +27,7 @@ pub struct Signer(pub SecretKey); impl Signer { fn sign_with_nonce( - &mut self, + &self, params: &Params, nonce: BigUint, kvs: &HashMap, @@ -48,7 +48,7 @@ impl Signer { dict, }) } - fn _sign(&mut self, params: &Params, kvs: &HashMap) -> Result { + fn _sign(&self, params: &Params, kvs: &HashMap) -> Result { let nonce = OsRng.gen_biguint_below(&GROUP_ORDER); self.sign_with_nonce(params, nonce, kvs) } @@ -59,7 +59,7 @@ impl Signer { } impl PodSigner for Signer { - fn sign(&mut self, params: &Params, kvs: &HashMap) -> Result> { + fn sign(&self, params: &Params, kvs: &HashMap) -> Result> { Ok(self._sign(params, kvs).map(Box::new)?) } } @@ -200,8 +200,8 @@ pub mod tests { pod.insert("socialSecurityNumber", "G2121210"); let sk = SecretKey(123u64.into()); - let mut signer = Signer(sk); - let pod = pod.sign(&mut signer).unwrap(); + let signer = Signer(sk); + let pod = pod.sign(&signer).unwrap(); let pod = (pod.pod as Box).downcast::().unwrap(); pod.verify()?; diff --git a/src/examples/mod.rs b/src/examples/mod.rs index 54faf2a4..9dd73761 100644 --- a/src/examples/mod.rs +++ b/src/examples/mod.rs @@ -73,7 +73,7 @@ pub fn zu_kyc_pod_builder( // ETHDoS -pub fn attest_eth_friend(params: &Params, src: &mut impl PodSigner, dst: Value) -> SignedPod { +pub fn attest_eth_friend(params: &Params, src: &impl PodSigner, dst: Value) -> SignedPod { let mut attestation = SignedPodBuilder::new(params); attestation.insert("attestation", dst); attestation.sign(src).unwrap() @@ -334,13 +334,13 @@ pub fn great_boy_pod_full_flow() -> Result<(Params, MainPodBuilder)> { }; let vd_set = &*MOCK_VD_SET; - let mut giggles_signer = Signer(SecretKey(1u32.into())); - let mut macrosoft_signer = Signer(SecretKey(2u32.into())); - let mut faebook_signer = Signer(SecretKey(3u32.into())); + let giggles_signer = Signer(SecretKey(1u32.into())); + let macrosoft_signer = Signer(SecretKey(2u32.into())); + let faebook_signer = Signer(SecretKey(3u32.into())); let good_boy_issuers = [&giggles_signer, ¯osoft_signer, &faebook_signer].map(|s| s.0.public_key()); - let mut bob_signer = Signer(SecretKey(11u32.into())); - let mut charlie_signer = Signer(SecretKey(12u32.into())); + let bob_signer = Signer(SecretKey(11u32.into())); + let charlie_signer = Signer(SecretKey(12u32.into())); let alice_signer = Signer(SecretKey(13u32.into())); let bob = bob_signer.public_key(); let charlie = charlie_signer.public_key(); @@ -351,23 +351,23 @@ pub fn great_boy_pod_full_flow() -> Result<(Params, MainPodBuilder)> { let mut bob_good_boys = Vec::new(); let good_boy = good_boy_sign_pod_builder(¶ms, &bob, 36); - bob_good_boys.push(good_boy.sign(&mut giggles_signer).unwrap()); - bob_good_boys.push(good_boy.sign(&mut macrosoft_signer).unwrap()); + bob_good_boys.push(good_boy.sign(&giggles_signer).unwrap()); + bob_good_boys.push(good_boy.sign(¯osoft_signer).unwrap()); // Charlie receives two good_boy pods from Macrosoft and Faebook let mut charlie_good_boys = Vec::new(); let good_boy = good_boy_sign_pod_builder(¶ms, &charlie, 27); - charlie_good_boys.push(good_boy.sign(&mut macrosoft_signer).unwrap()); - charlie_good_boys.push(good_boy.sign(&mut faebook_signer).unwrap()); + charlie_good_boys.push(good_boy.sign(¯osoft_signer).unwrap()); + charlie_good_boys.push(good_boy.sign(&faebook_signer).unwrap()); // Bob and Charlie send Alice a Friend POD let mut alice_friend_pods = Vec::new(); let friend = friend_sign_pod_builder(¶ms, &alice); - alice_friend_pods.push(friend.sign(&mut bob_signer).unwrap()); - alice_friend_pods.push(friend.sign(&mut charlie_signer).unwrap()); + alice_friend_pods.push(friend.sign(&bob_signer).unwrap()); + alice_friend_pods.push(friend.sign(&charlie_signer).unwrap()); let good_boy_issuers = Value::from(Set::new( params.max_depth_mt_containers, @@ -433,7 +433,7 @@ pub fn tickets_pod_full_flow() -> Result { let vd_set = &*MOCK_VD_SET; let builder = tickets_sign_pod_builder(¶ms); - let signed_pod = builder.sign(&mut Signer(SecretKey(1u32.into()))).unwrap(); + let signed_pod = builder.sign(&Signer(SecretKey(1u32.into()))).unwrap(); tickets_pod_builder( ¶ms, vd_set, diff --git a/src/frontend/custom.rs b/src/frontend/custom.rs index 1efcae13..2c7e898e 100644 --- a/src/frontend/custom.rs +++ b/src/frontend/custom.rs @@ -311,8 +311,8 @@ mod tests { mp_builder.pub_op(op!(custom, gt_custom_pred, desugared_gt))?; // Check that the POD builds - let mut prover = MockProver {}; - let proof = mp_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let proof = mp_builder.prove(&prover, ¶ms)?; Ok(()) } @@ -360,8 +360,8 @@ mod tests { let set_contains_custom_pred = CustomPredicateRef::new(batch, 0); mp_builder.pub_op(op!(custom, set_contains_custom_pred, set_contains))?; - let mut prover = MockProver {}; - let proof = mp_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let proof = mp_builder.prove(&prover, ¶ms)?; Ok(()) } diff --git a/src/frontend/mod.rs b/src/frontend/mod.rs index ab7e0ca8..180bf12b 100644 --- a/src/frontend/mod.rs +++ b/src/frontend/mod.rs @@ -49,9 +49,7 @@ impl SignedPodBuilder { self.kvs.insert(key.into(), value.into()); } - // TODO: Remove mut because Schnorr signature doesn't need any mutability of the signer, the - // nonces are sourced from OS randomness. - pub fn sign(&self, signer: &mut S) -> Result { + pub fn sign(&self, signer: &S) -> Result { // Sign POD with committed KV store. let pod = signer.sign(&self.params, &self.kvs)?; @@ -879,18 +877,18 @@ pub mod tests { println!("{}", gov_id); println!("{}", pay_stub); - let mut signer = Signer(SecretKey(1u32.into())); - let gov_id = gov_id.sign(&mut signer)?; + let signer = Signer(SecretKey(1u32.into())); + let gov_id = gov_id.sign(&signer)?; check_kvs(&gov_id)?; println!("{}", gov_id); - let mut signer = Signer(SecretKey(2u32.into())); - let pay_stub = pay_stub.sign(&mut signer)?; + let signer = Signer(SecretKey(2u32.into())); + let pay_stub = pay_stub.sign(&signer)?; check_kvs(&pay_stub)?; println!("{}", pay_stub); - let mut signer = Signer(SecretKey(3u32.into())); - let sanction_list = sanction_list.sign(&mut signer)?; + let signer = Signer(SecretKey(3u32.into())); + let sanction_list = sanction_list.sign(&signer)?; check_kvs(&sanction_list)?; println!("{}", sanction_list); @@ -898,8 +896,8 @@ pub mod tests { println!("{}", kyc_builder); // prove kyc with MockProver and print it - let mut prover = MockProver {}; - let kyc = kyc_builder.prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let kyc = kyc_builder.prove(&prover, ¶ms)?; println!("{}", kyc); @@ -916,31 +914,29 @@ pub mod tests { }; let vd_set = &*MOCK_VD_SET; - let mut alice = Signer(SecretKey(1u32.into())); - let mut bob = Signer(SecretKey(2u32.into())); - let mut charlie = Signer(SecretKey(3u32.into())); + let alice = Signer(SecretKey(1u32.into())); + let bob = Signer(SecretKey(2u32.into())); + let charlie = Signer(SecretKey(3u32.into())); let david = Signer(SecretKey(4u32.into())); let helper = EthDosHelper::new(¶ms, vd_set, true, alice.public_key())?; - let mut prover = MockProver {}; + let prover = MockProver {}; - let alice_attestation = attest_eth_friend(¶ms, &mut alice, bob.public_key()); - let dist_1 = helper - .dist_1(&alice_attestation)? - .prove(&mut prover, ¶ms)?; + let alice_attestation = attest_eth_friend(¶ms, &alice, bob.public_key()); + let dist_1 = helper.dist_1(&alice_attestation)?.prove(&prover, ¶ms)?; dist_1.pod.verify()?; - let bob_attestation = attest_eth_friend(¶ms, &mut bob, charlie.public_key()); + let bob_attestation = attest_eth_friend(¶ms, &bob, charlie.public_key()); let dist_2 = helper .dist_n_plus_1(&dist_1, &bob_attestation)? - .prove(&mut prover, ¶ms)?; + .prove(&prover, ¶ms)?; dist_2.pod.verify()?; - let charlie_attestation = attest_eth_friend(¶ms, &mut charlie, david.public_key()); + let charlie_attestation = attest_eth_friend(¶ms, &charlie, david.public_key()); let dist_3 = helper .dist_n_plus_1(&dist_2, &charlie_attestation)? - .prove(&mut prover, ¶ms)?; + .prove(&prover, ¶ms)?; dist_3.pod.verify()?; Ok(()) @@ -974,8 +970,8 @@ pub mod tests { let mut signed_builder = SignedPodBuilder::new(¶ms); signed_builder.insert("a", 1); signed_builder.insert("b", 1); - let mut signer = Signer(SecretKey(1u32.into())); - let signed_pod = signed_builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let signed_pod = signed_builder.sign(&signer).unwrap(); let mut builder = MainPodBuilder::new(¶ms, &vd_set); builder.add_signed_pod(&signed_pod); @@ -1011,8 +1007,8 @@ pub mod tests { ); builder.op(true, op_eq3).unwrap(); - let mut prover = MockProver {}; - let pod = builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let pod = builder.prove(&prover, ¶ms).unwrap(); println!("{}", pod); } @@ -1025,8 +1021,8 @@ pub mod tests { let mut builder = SignedPodBuilder::new(¶ms); builder.insert("num", 2); - let mut signer = Signer(SecretKey(1u32.into())); - let pod = builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let pod = builder.sign(&signer).unwrap(); println!("{}", pod); @@ -1034,8 +1030,8 @@ pub mod tests { builder.add_signed_pod(&pod); builder.pub_op(op!(gt, (&pod, "num"), 5)).unwrap(); - let mut prover = MockProver {}; - let false_pod = builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let false_pod = builder.prove(&prover, ¶ms).unwrap(); println!("{}", builder); println!("{}", false_pod); @@ -1057,8 +1053,8 @@ pub mod tests { let dict_root = Value::from(dict.clone()); builder.insert("dict", dict_root); - let mut signer = Signer(SecretKey(1u32.into())); - let pod = builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let pod = builder.sign(&signer).unwrap(); let mut builder = MainPodBuilder::new(¶ms, &vd_set); builder.add_signed_pod(&pod); @@ -1079,8 +1075,8 @@ pub mod tests { OperationAux::MerkleProof(dict.prove(&Key::from("a")).unwrap().1), )) .unwrap(); - let mut main_prover = MockProver {}; - let main_pod = builder.prove(&mut main_prover, ¶ms).unwrap(); + let main_prover = MockProver {}; + let main_pod = builder.prove(&main_prover, ¶ms).unwrap(); println!("{}", main_pod); @@ -1109,8 +1105,8 @@ pub mod tests { let st = Statement::equal(AnchoredKey::from((SELF, "a")), Value::from(28)); builder.insert(false, (st, op_new_entry.clone())); - let mut prover = MockProver {}; - let pod = builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let pod = builder.prove(&prover, ¶ms).unwrap(); pod.pod.verify().unwrap(); } @@ -1145,8 +1141,8 @@ pub mod tests { ); builder.insert(false, (st, op)); - let mut prover = MockProver {}; - let pod = builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let pod = builder.prove(&prover, ¶ms).unwrap(); pod.pod.verify().unwrap(); } } diff --git a/src/frontend/serialization.rs b/src/frontend/serialization.rs index 92180022..e1e8c948 100644 --- a/src/frontend/serialization.rs +++ b/src/frontend/serialization.rs @@ -222,8 +222,8 @@ mod tests { #[test] fn test_signed_pod_serialization() { let builder = signed_pod_builder(); - let mut signer = Signer(SecretKey(1u32.into())); - let pod = builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let pod = builder.sign(&signer).unwrap(); let serialized = serde_json::to_string_pretty(&pod).unwrap(); println!("serialized: {}", serialized); @@ -240,8 +240,8 @@ mod tests { #[test] fn test_mock_signed_pod_serialization() { let builder = signed_pod_builder(); - let mut signer = Signer(SecretKey(1u32.into())); - let pod = builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let pod = builder.sign(&signer).unwrap(); let serialized = serde_json::to_string_pretty(&pod).unwrap(); println!("serialized: {}", serialized); @@ -261,12 +261,12 @@ mod tests { let (gov_id_builder, pay_stub_builder, sanction_list_builder) = zu_kyc_sign_pod_builders(¶ms); - let mut signer = Signer(SecretKey(1u32.into())); - let gov_id_pod = gov_id_builder.sign(&mut signer).unwrap(); - let mut signer = Signer(SecretKey(2u32.into())); - let pay_stub_pod = pay_stub_builder.sign(&mut signer).unwrap(); - let mut signer = Signer(SecretKey(3u32.into())); - let sanction_list_pod = sanction_list_builder.sign(&mut signer).unwrap(); + let signer = Signer(SecretKey(1u32.into())); + let gov_id_pod = gov_id_builder.sign(&signer).unwrap(); + let signer = Signer(SecretKey(2u32.into())); + let pay_stub_pod = pay_stub_builder.sign(&signer).unwrap(); + let signer = Signer(SecretKey(3u32.into())); + let sanction_list_pod = sanction_list_builder.sign(&signer).unwrap(); let kyc_builder = zu_kyc_pod_builder( ¶ms, &vd_set, @@ -276,8 +276,8 @@ mod tests { ) .unwrap(); - let mut prover = MockProver {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms).unwrap(); + let prover = MockProver {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms).unwrap(); Ok(kyc_pod) } @@ -292,12 +292,12 @@ mod tests { let (gov_id_builder, pay_stub_builder, sanction_list_builder) = zu_kyc_sign_pod_builders(¶ms); - let mut signer = Signer(SecretKey(1u32.into())); - let gov_id_pod = gov_id_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(2u32.into())); - let pay_stub_pod = pay_stub_builder.sign(&mut signer)?; - let mut signer = Signer(SecretKey(3u32.into())); - let sanction_list_pod = sanction_list_builder.sign(&mut signer)?; + let signer = Signer(SecretKey(1u32.into())); + let gov_id_pod = gov_id_builder.sign(&signer)?; + let signer = Signer(SecretKey(2u32.into())); + let pay_stub_pod = pay_stub_builder.sign(&signer)?; + let signer = Signer(SecretKey(3u32.into())); + let sanction_list_pod = sanction_list_builder.sign(&signer)?; let kyc_builder = zu_kyc_pod_builder( ¶ms, &vd_set, @@ -306,8 +306,8 @@ mod tests { &sanction_list_pod, )?; - let mut prover = Prover {}; - let kyc_pod = kyc_builder.prove(&mut prover, ¶ms)?; + let prover = Prover {}; + let kyc_pod = kyc_builder.prove(&prover, ¶ms)?; Ok(kyc_pod) } @@ -348,23 +348,21 @@ mod tests { }; let vd_set = &*MOCK_VD_SET; - let mut alice = Signer(SecretKey(1u32.into())); - let mut bob = Signer(SecretKey(2u32.into())); + let alice = Signer(SecretKey(1u32.into())); + let bob = Signer(SecretKey(2u32.into())); let charlie = Signer(SecretKey(3u32.into())); // Alice attests that she is ETH friends with Bob and Bob // attests that he is ETH friends with Charlie. - let alice_attestation = attest_eth_friend(¶ms, &mut alice, bob.public_key()); - let bob_attestation = attest_eth_friend(¶ms, &mut bob, charlie.public_key()); + let alice_attestation = attest_eth_friend(¶ms, &alice, bob.public_key()); + let bob_attestation = attest_eth_friend(¶ms, &bob, charlie.public_key()); let helper = EthDosHelper::new(¶ms, vd_set, true, alice.public_key())?; - let mut prover = MockProver {}; - let dist_1 = helper - .dist_1(&alice_attestation)? - .prove(&mut prover, ¶ms)?; + let prover = MockProver {}; + let dist_1 = helper.dist_1(&alice_attestation)?.prove(&prover, ¶ms)?; let dist_2 = helper .dist_n_plus_1(&dist_1, &bob_attestation)? - .prove(&mut prover, ¶ms)?; + .prove(&prover, ¶ms)?; Ok(dist_2) } @@ -380,7 +378,7 @@ mod tests { let kyc_pod = build_mock_zukyc_pod().unwrap(); let signed_pod = signed_pod_builder() - .sign(&mut Signer(SecretKey(1u32.into()))) + .sign(&Signer(SecretKey(1u32.into()))) .unwrap(); let ethdos_pod = build_ethdos_pod().unwrap(); let mainpod_schema_value = serde_json::to_value(&mainpod_schema).unwrap(); diff --git a/src/middleware/mod.rs b/src/middleware/mod.rs index 9936eda8..51df8a71 100644 --- a/src/middleware/mod.rs +++ b/src/middleware/mod.rs @@ -874,7 +874,7 @@ dyn_clone::clone_trait_object!(RecursivePod); pub trait PodSigner { fn sign( - &mut self, + &self, params: &Params, kvs: &HashMap, ) -> Result, BackendError>;