|
1 | 1 | use alloy::hex::hex; |
2 | | -use proof_aggregator::aggregators::{ |
3 | | - risc0_aggregator::RISC0_AGGREGATOR_PROGRAM_ID_BYTES, sp1_aggregator, |
4 | | -}; |
| 2 | +use proof_aggregator::aggregators::{risc0_aggregator, sp1_aggregator}; |
5 | 3 | use serde_json::json; |
6 | 4 | use sp1_sdk::HashableKey; |
7 | 5 | use std::{env, fs, path::Path}; |
8 | 6 | use tracing::info; |
9 | 7 | use tracing_subscriber::FmtSubscriber; |
10 | 8 |
|
11 | | -const SP1_PROGRAM_ELF: &[u8] = |
12 | | - include_bytes!("../aggregation_programs/sp1/elf/sp1_aggregator_program"); |
| 9 | +const SP1_CHUNK_AGGREGATOR_PROGRAM_ELF: &[u8] = |
| 10 | + include_bytes!("../aggregation_programs/sp1/elf/sp1_chunk_aggregator_program"); |
13 | 11 |
|
14 | | -// include!(concat!(env!("OUT_DIR"), "/methods.rs")); |
| 12 | +const SP1_ROOT_AGGREGATOR_PROGRAM_ELF: &[u8] = |
| 13 | + include_bytes!("../aggregation_programs/sp1/elf/sp1_root_aggregator_program"); |
15 | 14 |
|
16 | 15 | fn main() { |
17 | 16 | let subscriber = FmtSubscriber::builder().finish(); |
18 | 17 | tracing::subscriber::set_global_default(subscriber).expect("setting default subscriber failed"); |
19 | 18 |
|
20 | 19 | info!("About to write sp1 programs vk hash bytes + risc0 programs image id bytes"); |
21 | | - let sp1_vk_hash = sp1_aggregator::vk_from_elf(SP1_PROGRAM_ELF).bytes32_raw(); |
22 | | - //let risc0_image_id_bytes = RISC0_AGGREGATOR_PROGRAM_ID_BYTES; |
23 | | - // Just to test sp1 |
24 | | - let risc0_image_id_bytes = SP1_PROGRAM_ELF; |
25 | | - |
26 | | - let sp1_vk_hash_hex = hex::encode(sp1_vk_hash); |
27 | | - let risc0_image_id_hex = hex::encode(risc0_image_id_bytes); |
| 20 | + let sp1_chunk_aggregator_vk_hash = |
| 21 | + sp1_aggregator::vk_from_elf(SP1_CHUNK_AGGREGATOR_PROGRAM_ELF).bytes32_raw(); |
| 22 | + let sp1_chunk_aggregator_vk_hash_words = |
| 23 | + sp1_aggregator::vk_from_elf(SP1_CHUNK_AGGREGATOR_PROGRAM_ELF).hash_u32(); |
| 24 | + let sp1_root_aggreagot_vk_hash = |
| 25 | + sp1_aggregator::vk_from_elf(SP1_ROOT_AGGREGATOR_PROGRAM_ELF).bytes32_raw(); |
| 26 | + |
| 27 | + let risc0_chunk_aggregator_image_id_bytes = |
| 28 | + risc0_aggregator::RISC0_CHUNK_AGGREGATOR_PROGRAM_ID_BYTES; |
| 29 | + let risc0_root_aggregator_image_id_bytes = |
| 30 | + risc0_aggregator::RISC0_ROOT_AGGREGATOR_PROGRAM_ID_BYTES; |
| 31 | + |
| 32 | + let sp1_chunk_aggregator_vk_hash_hex = hex::encode(sp1_chunk_aggregator_vk_hash); |
| 33 | + let sp1_root_aggregator_vk_hash_hex = hex::encode(sp1_root_aggreagot_vk_hash); |
| 34 | + let risc0_chunk_aggregator_image_id_hex = hex::encode(risc0_chunk_aggregator_image_id_bytes); |
| 35 | + let risc0_root_aggregator_imaged_id_hex = hex::encode(risc0_root_aggregator_image_id_bytes); |
28 | 36 |
|
29 | 37 | let dest_path = Path::new("programs_ids.json"); |
30 | 38 |
|
31 | 39 | let json_data = json!({ |
32 | | - "sp1_vk_hash": format!("0x{}", sp1_vk_hash_hex), |
33 | | - "risc0_image_id": format!("0x{}", risc0_image_id_hex), |
| 40 | + "sp1_chunk_aggregator_vk_hash": format!("0x{}", sp1_chunk_aggregator_vk_hash_hex), |
| 41 | + "sp1_chunk_aggregator_vk_hash_words": format!("{:?}", sp1_chunk_aggregator_vk_hash_words), |
| 42 | + "sp1_root_aggregator_vk_hash": format!("0x{}", sp1_root_aggregator_vk_hash_hex), |
| 43 | + "risc0_chunk_aggregator_image_id": format!("0x{}", risc0_chunk_aggregator_image_id_hex), |
| 44 | + "risc0_chunk_aggregator_image_id_bytes": format!("{:?}", risc0_chunk_aggregator_image_id_bytes), |
| 45 | + "risc0_root_aggregator_image_id": format!("0x{}", risc0_root_aggregator_imaged_id_hex), |
34 | 46 | }); |
35 | 47 |
|
36 | 48 | // Write to the file |
|
0 commit comments