Config update

This commit is contained in:
Richard Liang
2023-09-28 14:00:37 -07:00
parent 3a5efa7641
commit 0aa2cc936c

View File

@@ -574,18 +574,83 @@ fn test_aggregation_split_sha256_rsa2() {
println!("Aggregation snark success");
}
#[test]
fn test_aggregation_split_sha256_rsa3() {
println!("Generating dummy snark");
let snark1 = generate_sha256_circuit(
"./certs/cert_3.pem",
"./certs/cert_2.pem",
16
);
let snark2 = generate_rsa_circuit(
"./certs/cert_3.pem",
"./certs/cert_2.pem",
16
);
let snark3 = generate_sha256_circuit(
"./certs/cert_2.pem",
"./certs/cert_1.pem",
16
);
let snark4 = generate_rsa_circuit(
"./certs/cert_2.pem",
"./certs/cert_1.pem",
16
);
// Create an aggregation circuit using the snark
let agg_k = 20;
let agg_lookup_bits = agg_k - 1;
let agg_params = gen_srs(agg_k as u32);
let mut agg_circuit = AggregationCircuit::new::<SHPLONK>(
CircuitBuilderStage::Keygen,
AggregationConfigParams {degree: agg_k, lookup_bits: agg_lookup_bits as usize, ..Default::default()},
&agg_params,
vec![snark1.clone(), snark2.clone(), snark3.clone(), snark4.clone()],
VerifierUniversality::Full
);
println!("Aggregation circuit calculating params");
let agg_config = agg_circuit.calculate_params(Some(10));
// let start0 = start_timer!(|| "gen vk & pk");
println!("Aggregation circuit generating pk");
let pk = gen_pk(&agg_params, &agg_circuit, None);
let break_points = agg_circuit.break_points();
// std::fs::remove_file(Path::new("examples/agg.pk")).ok();
// let _pk = gen_pk(&params, &agg_circuit, Some(Path::new("examples/agg.pk")));
// end_timer!(start0);
// let pk = read_pk::<AggregationCircuit>(Path::new("examples/agg.pk"), agg_config).unwrap();
// std::fs::remove_file(Path::new("examples/agg.pk")).ok();
// let break_points = agg_circuit.break_points();
let agg_circuit = AggregationCircuit::new::<SHPLONK>(
CircuitBuilderStage::Prover,
agg_config,
&agg_params,
vec![snark1, snark2, snark3, snark4],
VerifierUniversality::Full,
).use_break_points(break_points.clone());
println!("Generating aggregation snark");
let _agg_snark = gen_snark_shplonk(&agg_params, &pk, agg_circuit, None::<&str>);
println!("Aggregation snark success");
}
#[test]
fn test_two_level_aggregation_split_sha256_rsa() {
println!("Generating dummy snark");
let snark1 = generate_sha256_circuit(
"./certs/cert_3.pem",
"./certs/cert_2.pem",
18
16
);
let snark2 = generate_rsa_circuit(
"./certs/cert_3.pem",
"./certs/cert_2.pem",
18
16
);
// Create an aggregation circuit using the snark
@@ -633,12 +698,12 @@ fn test_two_level_aggregation_split_sha256_rsa() {
let snark3 = generate_sha256_circuit(
"./certs/cert_2.pem",
"./certs/cert_1.pem",
18
16
);
let snark4 = generate_rsa_circuit(
"./certs/cert_2.pem",
"./certs/cert_1.pem",
18
16
);
// std::fs::remove_file(Path::new("examples/agg.pk")).ok();