Skip to content

Commit

Permalink
imp: increase number of max aggregated key-value pairs u16::MAX (#251)
Browse files Browse the repository at this point in the history
Co-authored-by: srdtrk <srdtrk@hotmail.com>
  • Loading branch information
mmsqe and srdtrk authored Feb 3, 2025
1 parent 1b9a151 commit a6ee62a
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 9 deletions.
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions packages/sp1-ics07-tendermint-prover/src/prover.rs
Original file line number Diff line number Diff line change
Expand Up @@ -139,11 +139,11 @@ where
kv_proofs: Vec<(KVPair, MerkleProof)>,
) -> SP1ProofWithPublicValues {
assert!(!kv_proofs.is_empty(), "No key-value pairs to prove");
let len = u8::try_from(kv_proofs.len()).expect("too many key-value pairs");
let len = u16::try_from(kv_proofs.len()).expect("too many key-value pairs");

let mut stdin = SP1Stdin::new();
stdin.write_slice(commitment_root);
stdin.write_vec(vec![len]);
stdin.write_slice(&len.to_le_bytes());
for (kv_pair, proof) in kv_proofs {
stdin.write_vec(kv_pair.abi_encode());
stdin.write_vec(proof.encode_vec());
Expand Down Expand Up @@ -174,7 +174,7 @@ where
kv_proofs: Vec<(KVPair, MerkleProof)>,
) -> SP1ProofWithPublicValues {
assert!(!kv_proofs.is_empty(), "No key-value pairs to prove");
let len = u8::try_from(kv_proofs.len()).expect("too many key-value pairs");
let len = u16::try_from(kv_proofs.len()).expect("too many key-value pairs");
// Encode the inputs into our program.
let encoded_1 = client_state.abi_encode();
let encoded_2 = trusted_consensus_state.abi_encode();
Expand All @@ -187,7 +187,7 @@ where
stdin.write_vec(encoded_2);
stdin.write_vec(encoded_3);
stdin.write_vec(encoded_4);
stdin.write_vec(vec![len]);
stdin.write_slice(&len.to_le_bytes());
for (kv_pair, proof) in kv_proofs {
stdin.write_vec(kv_pair.abi_encode());
stdin.write_vec(proof.encode_vec());
Expand Down
3 changes: 2 additions & 1 deletion programs/sp1-programs/membership/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ pub fn main() {
let app_hash: [u8; 32] = encoded_1.try_into().unwrap();

// encoded_2 is the number of key-value pairs we want to verify
let request_len = sp1_zkvm::io::read_vec()[0];
let encoded_2 = sp1_zkvm::io::read_vec();
let request_len = u16::from_le_bytes(encoded_2.try_into().unwrap());
assert!(request_len != 0);

let request_iter = (0..request_len).map(|_| {
Expand Down
3 changes: 2 additions & 1 deletion programs/sp1-programs/uc-and-membership/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ pub fn main() {
let encoded_3 = sp1_zkvm::io::read_vec();
let encoded_4 = sp1_zkvm::io::read_vec();
// encoded_5 is the number of key-value pairs we want to verify
let request_len = sp1_zkvm::io::read_vec()[0];
let encoded_5 = sp1_zkvm::io::read_vec();
let request_len = u16::from_le_bytes(encoded_5.try_into().unwrap());
assert!(request_len != 0);

// input 1: the client state
Expand Down

0 comments on commit a6ee62a

Please sign in to comment.