Skip to content

Commit

Permalink
Handles clippy errors (#1)
Browse files Browse the repository at this point in the history
* clippy

* clippy

* clippy

* fixes nonmembership test

* fmt and add to circleci

* dummy

* fixes ci

* clippy and fmt

* add clippy on nightly
  • Loading branch information
kobigurk authored Apr 23, 2020
1 parent d37b251 commit f0f99c7
Show file tree
Hide file tree
Showing 19 changed files with 107 additions and 125 deletions.
6 changes: 5 additions & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,9 @@ jobs:
- checkout
- run: cargo test --release
- run: rustup install nightly
- run: rustup component add clippy
- run: rustup component add clippy --toolchain nightly
- run: cargo +nightly test --no-default-features --features dalek

- run: cargo fmt --all -- --check
- run: cargo clippy --release --all-targets -- -D warnings
- run: cargo +nightly clippy --release --all-targets --no-default-features --features dalek -- -D warnings
4 changes: 2 additions & 2 deletions benches/membership_bp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
crs.crs_hash_to_prime.hash_to_prime_parameters.transcript = Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down Expand Up @@ -100,7 +100,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
4 changes: 2 additions & 2 deletions benches/membership_bp_60.rs
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
crs.crs_hash_to_prime.hash_to_prime_parameters.transcript = Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down Expand Up @@ -102,7 +102,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
4 changes: 2 additions & 2 deletions benches/membership_class.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand All @@ -99,7 +99,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
4 changes: 2 additions & 2 deletions benches/membership_hash.rs
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand All @@ -110,7 +110,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
4 changes: 2 additions & 2 deletions benches/membership_prime.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand All @@ -99,7 +99,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
4 changes: 2 additions & 2 deletions benches/membership_prime_60.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand All @@ -101,7 +101,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let proof_transcript = RefCell::new(Transcript::new(b"membership"));
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
6 changes: 3 additions & 3 deletions benches/nonmembership_bp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {

let acc = accum.value;
let d = non_mem_proof.d.clone();
let b = non_mem_proof.b.clone();
let b = non_mem_proof.b;
assert_eq!(
Rsa2048::op(&Rsa2048::exp(&d, &value), &Rsa2048::exp(&acc, &b)),
protocol.crs.crs_coprime.integer_commitment_parameters.g
Expand All @@ -76,7 +76,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
crs.crs_hash_to_prime.hash_to_prime_parameters.transcript = Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down Expand Up @@ -107,7 +107,7 @@ pub fn criterion_benchmark(c: &mut Criterion) {
Some(proof_transcript.clone());
let mut verifier_channel = TranscriptVerifierChannel::new(&crs, &proof_transcript);
let statement = Statement {
c_e_q: commitment.clone(),
c_e_q: commitment,
c_p: acc.clone(),
};
protocol
Expand Down
11 changes: 5 additions & 6 deletions benches/rsa.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,11 @@ pub fn criterion_benchmark(c: &mut Criterion) {
&Integer::from(0),
&Rsa2048::order_upper_bound(),
));
let r_range: Integer =
Rsa2048::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(params.security_zk + params.security_soundness) as u32,
));
let r_range: Integer = Rsa2048::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(params.security_zk + params.security_soundness) as u32,
));
let r = random_symmetric_range(&mut rng1, &r_range);
Rsa2048::exp(&e, &r);
})
Expand Down
2 changes: 1 addition & 1 deletion src/parameters/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ impl Parameters {
}
}

return None;
None
})();
let (prime_bits, security_soundness_zk) =
derived.ok_or(ParametersError::InvalidParameters)?;
Expand Down
51 changes: 22 additions & 29 deletions src/protocols/coprime/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,10 @@ impl<G: ConvertibleUnknownOrderGroup> Protocol<G> {
statement: &Statement<G>,
witness: &Witness<G>,
) -> Result<(), ProofError> {
let r_a = random_symmetric_range(rng, &Integer::from(G::order_upper_bound() / 2));
let r_a_prime = random_symmetric_range(rng, &Integer::from(G::order_upper_bound() / 2));
let rho_b_cap = random_symmetric_range(rng, &Integer::from(G::order_upper_bound() / 2));
let rho_b_cap_prime =
random_symmetric_range(rng, &Integer::from(G::order_upper_bound() / 2));
let r_a = random_symmetric_range(rng, &(G::order_upper_bound() / 2));
let r_a_prime = random_symmetric_range(rng, &(G::order_upper_bound() / 2));
let rho_b_cap = random_symmetric_range(rng, &(G::order_upper_bound() / 2));
let rho_b_cap_prime = random_symmetric_range(rng, &(G::order_upper_bound() / 2));
let c_a = G::op(
&witness.d,
&G::exp(&self.crs.integer_commitment_parameters.h, &r_a),
Expand Down Expand Up @@ -124,29 +123,24 @@ impl<G: ConvertibleUnknownOrderGroup> Protocol<G> {
let r_b = random_symmetric_range(rng, &r_b_e_range);
let r_e = random_symmetric_range(rng, &r_b_e_range);

let r_r_range = Integer::from(
G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk + self.crs.parameters.security_soundness)
as u32,
)),
);
let r_r_range = G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk + self.crs.parameters.security_soundness) as u32,
));
let r_rho_b_cap = random_symmetric_range(rng, &r_r_range);
let r_r = random_symmetric_range(rng, &r_r_range);
let r_r_a = random_symmetric_range(rng, &r_r_range);
let r_r_a_prime = random_symmetric_range(rng, &r_r_range);
let r_rho_b_cap_prime = random_symmetric_range(rng, &r_r_range);

let r_beta_delta_range = Integer::from(
G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk
+ self.crs.parameters.security_soundness
+ self.crs.parameters.hash_to_prime_bits) as u32,
)),
);
let r_beta_delta_range = G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk
+ self.crs.parameters.security_soundness
+ self.crs.parameters.hash_to_prime_bits) as u32,
));
let r_beta = random_symmetric_range(rng, &r_beta_delta_range);
let r_delta = random_symmetric_range(rng, &r_beta_delta_range);

Expand Down Expand Up @@ -184,16 +178,15 @@ impl<G: ConvertibleUnknownOrderGroup> Protocol<G> {
verifier_channel.send_message2(&message2)?;

let c = verifier_channel.receive_challenge()?;
let s_b = r_b.clone() - c.clone() * witness.b.clone();
let s_b = r_b - c.clone() * witness.b.clone();
let s_e = r_e - c.clone() * witness.e.clone();
let s_rho_b_cap = r_rho_b_cap - c.clone() * rho_b_cap.clone();
let s_r = r_r - c.clone() * witness.r.clone();
let s_r_a = r_r_a.clone() - c.clone() * r_a.clone();
let s_r_a = r_r_a - c.clone() * r_a.clone();
let s_r_a_prime = r_r_a_prime - c.clone() * r_a_prime.clone();
let s_rho_b_cap_prime = r_rho_b_cap_prime - c.clone() * rho_b_cap_prime.clone();
let s_beta = r_beta + c.clone() * (witness.e.clone() * r_a.clone() + rho_b_cap.clone());
let s_delta =
r_delta + c.clone() * (witness.e.clone() * r_a_prime.clone() + rho_b_cap_prime.clone());
let s_beta = r_beta + c.clone() * (witness.e.clone() * r_a + rho_b_cap);
let s_delta = r_delta + c * (witness.e.clone() * r_a_prime + rho_b_cap_prime);
let message3 = Message3 {
s_b,
s_e,
Expand Down Expand Up @@ -272,7 +265,7 @@ impl<G: ConvertibleUnknownOrderGroup> Protocol<G> {
+ 1) as u32,
));

let s_e_expected_left = Integer::from(-s_e_expected_right.clone());
let s_e_expected_left: Integer = -s_e_expected_right.clone();
let is_s_e_in_range =
message3.s_e >= s_e_expected_left && message3.s_e <= s_e_expected_right;

Expand Down Expand Up @@ -358,7 +351,7 @@ mod test {

let acc = accum.value;
let d = non_mem_proof.d.clone();
let b = non_mem_proof.b.clone();
let b = non_mem_proof.b;
assert_eq!(
Rsa2048::op(&Rsa2048::exp(&d, &value), &Rsa2048::exp(&acc, &b)),
protocol.crs.integer_commitment_parameters.g
Expand Down
8 changes: 2 additions & 6 deletions src/protocols/hash_to_prime/snark_hash.rs
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ impl<E: PairingEngine, P: HashToPrimeHashParameters> HashToPrimeProtocol<E::G1Pr
let bits_to_skip = bigint_bits as usize - P::MESSAGE_SIZE as usize;
let value_raw_bits = value.into_repr().to_bits();
for b in &value_raw_bits[..bits_to_skip] {
if *b != false {
if *b {
return Err(HashToPrimeError::ValueTooBig);
}
}
Expand Down Expand Up @@ -347,11 +347,7 @@ mod test {
let c = HashToPrimeHashCircuit::<Bls12_381, TestParameters> {
security_level: crs.parameters.security_level,
required_bit_size: crs.parameters.hash_to_prime_bits,
value: Some(
integer_to_bigint_mod_q::<G1Projective>(&value)
.unwrap()
.into(),
),
value: Some(integer_to_bigint_mod_q::<G1Projective>(&value).unwrap()),
index: Some(index),
parameters_type: std::marker::PhantomData,
};
Expand Down
6 changes: 1 addition & 5 deletions src/protocols/hash_to_prime/snark_range.rs
Original file line number Diff line number Diff line change
Expand Up @@ -163,11 +163,7 @@ mod test {
let mut cs = TestConstraintSystem::<Fr>::new();
let c = HashToPrimeCircuit::<Bls12_381> {
required_bit_size: 4,
value: Some(
integer_to_bigint_mod_q::<G1Projective>(&Integer::from(12))
.unwrap()
.into(),
),
value: Some(integer_to_bigint_mod_q::<G1Projective>(&Integer::from(12)).unwrap()),
};
c.generate_constraints(&mut cs).unwrap();
println!("num constraints: {}", cs.constraints.len());
Expand Down
16 changes: 8 additions & 8 deletions src/protocols/membership/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -111,12 +111,12 @@ impl<G: ConvertibleUnknownOrderGroup, P: CurvePointProjective, HP: HashToPrimePr
},
crs_root: CRSRoot::<G> {
parameters: parameters.clone(),
integer_commitment_parameters: integer_commitment_parameters.clone(),
integer_commitment_parameters,
},
crs_hash_to_prime: CRSHashToPrime::<P, HP> {
parameters: parameters.clone(),
pedersen_commitment_parameters: pedersen_commitment_parameters.clone(),
hash_to_prime_parameters: hash_to_prime_parameters.clone(),
pedersen_commitment_parameters,
hash_to_prime_parameters,
},
},
})
Expand Down Expand Up @@ -165,12 +165,12 @@ impl<G: ConvertibleUnknownOrderGroup, P: CurvePointProjective, HP: HashToPrimePr
rng1,
rng2,
&ModEqStatement {
c_e: c_e.clone(),
c_e,
c_e_q: statement.c_e_q.clone(),
},
&ModEqWitness {
e: hashed_e.clone(),
r: r.clone(),
e: hashed_e,
r,
r_q: witness.r_q.clone(),
},
)?;
Expand Down Expand Up @@ -213,7 +213,7 @@ impl<G: ConvertibleUnknownOrderGroup, P: CurvePointProjective, HP: HashToPrimePr
modeq.verify(
prover_channel,
&ModEqStatement {
c_e: c_e.clone(),
c_e,
c_e_q: statement.c_e_q.clone(),
},
)?;
Expand Down Expand Up @@ -429,7 +429,7 @@ mod test {
HPHashProtocol<Bls12_381, TestHashToPrimeParameters>,
>::from_crs(&crs);

let value = Integer::from(24928329);
let value = Integer::from(24_928_329);
let (hashed_value, _) = protocol.hash_to_prime(&value).unwrap();
let randomness = Integer::from(5);
let commitment = protocol
Expand Down
13 changes: 5 additions & 8 deletions src/protocols/modeq/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,14 +75,11 @@ impl<G: ConvertibleUnknownOrderGroup, P: CurvePointProjective> Protocol<G, P> {
+ self.crs.parameters.hash_to_prime_bits) as u32,
));
let r_e = random_symmetric_range(rng1, &r_e_range);
let r_r_range = Integer::from(
G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk + self.crs.parameters.security_soundness)
as u32,
)),
);
let r_r_range: Integer = G::order_upper_bound() / 2
* Integer::from(Integer::u_pow_u(
2,
(self.crs.parameters.security_zk + self.crs.parameters.security_soundness) as u32,
));
let r_r = random_symmetric_range(rng1, &r_r_range);
assert!(self.crs.parameters.field_size_bits as usize >= P::ScalarField::size_in_bits());
let r_r_q_field = P::ScalarField::rand(rng2);
Expand Down
Loading

0 comments on commit f0f99c7

Please sign in to comment.