diff --git a/hash/risc0/README.md b/hash/risc0/README.md deleted file mode 100644 index edaa9ab..0000000 --- a/hash/risc0/README.md +++ /dev/null @@ -1,7 +0,0 @@ -Benchmarking inside risc'0 zkvm --------------------------------- - -- `external` folder contains risc0 as a git submodule. -- `bench` folder contains the benchmarking for different hash functions. Go to the `bench/README.md` for more details. -- `inner_proof` folder contains methods for generating the Receipt for sha256 which is being used as an inner proof in `composition` -- `composition` folder contains methods of proof composition which uses `inner_proof`. diff --git a/hash/risc0/bench/.vscode/settings.json b/hash/risc0/bench/.vscode/settings.json deleted file mode 100644 index 4545fa6..0000000 --- a/hash/risc0/bench/.vscode/settings.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "rust-analyzer.linkedProjects": [ - "./methods/guest/Cargo.toml" - ] -} \ No newline at end of file diff --git a/hash/risc0/bench/Cargo.toml b/hash/risc0/bench/Cargo.toml deleted file mode 100644 index f4f93e0..0000000 --- a/hash/risc0/bench/Cargo.toml +++ /dev/null @@ -1,16 +0,0 @@ -[package] -name = "benchmark" -version = "0.1.0" -edition = "2021" - -[dependencies] -risc0-zkvm = { path = "../external/risc0/risc0/zkvm" } -serde = "1.0" -rand = "0.8.3" -sha2 ={ git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.6-risczero.0" } -benchmark_methods = { path = "methods" } -zkhash = { git = "https://github.com/HorizenLabs/poseidon2.git"} -ark-ff = "0.4.2" -hex = "0.4.3" -ark-serialize = "0.4" -risc0-core = { path = "../external/risc0/risc0/core" } diff --git a/hash/risc0/bench/LICENSE b/hash/risc0/bench/LICENSE deleted file mode 100644 index 261eeb9..0000000 --- a/hash/risc0/bench/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/hash/risc0/bench/README.md b/hash/risc0/bench/README.md deleted file mode 100644 index d0bf8ae..0000000 --- a/hash/risc0/bench/README.md +++ /dev/null @@ -1,12 +0,0 @@ -Benchmarking different hashes inside risc'0 zkvm ------------------------------------------------ - -The benchmark is defined by the following shell scripts: - -- `build.sh` - build the code. - -- `run.sh` and `run2.sh` - run the benchmark itself (`run.sh` for sha256, keccak, blake2b, blake3 and `run2.sh` for poseidon2 over bn128 and babybear) - -Benchmarks can be parameterized using environment variables. By convention, we start the names of these environment variables with the `ZKBENCH_` prefix. - -Additional files `bench.cfg` and `bench_tree.cfg` specifies the configurations and parameters. diff --git a/hash/risc0/bench/bench.cfg b/hash/risc0/bench/bench.cfg deleted file mode 100644 index a5a366f..0000000 --- a/hash/risc0/bench/bench.cfg +++ /dev/null @@ -1,11 +0,0 @@ -name: "Hashes benchmarking using risc0 prover" -author: -timeout: 200 -params: - [ HASH_TYPE: [ "sha256", "keccak", "blake2b", "blake3"] - , INPUT_SIZE_BYTES: [ 256, 512, 1024, 2048 ] - ] -tags: risc0, $HASH_TYPE -comments: - The benchmarks includes for sha256, keccak, blake2b, blake3. - the hashing is done inside the guest and receipt is received which is verified. diff --git a/hash/risc0/bench/bench_tree.cfg b/hash/risc0/bench/bench_tree.cfg deleted file mode 100644 index f6d767e..0000000 --- a/hash/risc0/bench/bench_tree.cfg +++ /dev/null @@ -1,11 +0,0 @@ -name: "Hashes benchmarking using risc0 prover" -author: -timeout: 1000 -params: - [ HASH_TYPE_TREE: [ "poseidon2_babybear", "poseidon2_babybear_native", "poseidon2_bn128"] - , TREE_DEPTH: [ 2, 4, 8, 16 ] - ] -tags: risc0, $HASH_TYPE_TREE -comments: - The benchmarks includes for poseidon2(merkle hashing) over bn128 and babybear. - the hashing is done inside the guest and receipt is received which is verified. diff --git a/hash/risc0/bench/build.sh b/hash/risc0/bench/build.sh deleted file mode 100755 index 0dfa161..0000000 --- a/hash/risc0/bench/build.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - - cargo build --release diff --git a/hash/risc0/bench/methods/Cargo.toml b/hash/risc0/bench/methods/Cargo.toml deleted file mode 100644 index f391ce6..0000000 --- a/hash/risc0/bench/methods/Cargo.toml +++ /dev/null @@ -1,10 +0,0 @@ -[package] -name = "benchmark_methods" -version = "0.1.0" -edition = "2021" - -[build-dependencies] -risc0-build = { path = "../../external/risc0/risc0/build" } - -[package.metadata.risc0] -methods = ["guest"] diff --git a/hash/risc0/bench/methods/build.rs b/hash/risc0/bench/methods/build.rs deleted file mode 100644 index 08a8a4e..0000000 --- a/hash/risc0/bench/methods/build.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - risc0_build::embed_methods(); -} diff --git a/hash/risc0/bench/methods/guest/Cargo.toml b/hash/risc0/bench/methods/guest/Cargo.toml deleted file mode 100644 index 6d495bb..0000000 --- a/hash/risc0/bench/methods/guest/Cargo.toml +++ /dev/null @@ -1,21 +0,0 @@ -[package] -name = "method" -version = "0.1.0" -edition = "2021" - -[workspace] - -[dependencies] -# If you want to try (experimental) std support, add `features = [ "std" ]` to risc0-zkvm -risc0-zkvm = { path = "../../../external/risc0/risc0/zkvm", default-features = false,features = ["std"] } -sha3 = "0.10.8" -sha2 ={ git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.6-risczero.0" } -risc0-zkp = {path = "../../../external/risc0/risc0/zkp"} -blake3 = "1.5.0" -zkhash = { git = "https://github.com/HorizenLabs/poseidon2.git"} -ark-serialize = "0.4" -ark-ff = "0.4.2" -risc0-core = {path = "../../../external/risc0/risc0/core"} -lazy_static = "1.4" -# risc0-zkp-core = "0.10.0" -rand = "0.8.5" \ No newline at end of file diff --git a/hash/risc0/bench/methods/guest/src/bin/blake2b.rs b/hash/risc0/bench/methods/guest/src/bin/blake2b.rs deleted file mode 100644 index 4d6c3e5..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/blake2b.rs +++ /dev/null @@ -1,15 +0,0 @@ -#![no_main] - -use risc0_zkvm::{guest::env, sha::Digest}; -use risc0_zkp::core::hash::blake2b::{Blake2b, Blake2bCpuImpl}; - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec = env::read(); - let hash = Blake2bCpuImpl::blake2b(&data); - let digest: Digest = hash.into(); - env::commit(&digest) - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/blake3.rs b/hash/risc0/bench/methods/guest/src/bin/blake3.rs deleted file mode 100644 index fc78b7a..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/blake3.rs +++ /dev/null @@ -1,15 +0,0 @@ -#![no_main] - -use risc0_zkvm::{guest::env, sha::Digest}; -use blake3::hash; - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec = env::read(); - let result = hash(&data); - let digest = Digest::try_from(*result.as_bytes()).unwrap(); - env::commit(&digest) - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/keccak.rs b/hash/risc0/bench/methods/guest/src/bin/keccak.rs deleted file mode 100644 index c28e7e0..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/keccak.rs +++ /dev/null @@ -1,15 +0,0 @@ -#![no_main] - -use risc0_zkvm::{guest::env, sha::Digest}; -use sha3::{Digest as _, Keccak256}; - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec = env::read(); - let hash: [u8;32] = Keccak256::digest(data).into(); - let digest = Digest::try_from(hash).unwrap(); - env::commit(&digest) - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear.rs b/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear.rs deleted file mode 100644 index 3577d02..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear.rs +++ /dev/null @@ -1,135 +0,0 @@ -#![no_main] -#![allow(non_snake_case)] -use risc0_zkvm::guest::env; -use zkhash::poseidon2::poseidon2; -use zkhash::poseidon2::poseidon2::Poseidon2; -use zkhash::poseidon2::poseidon2_instance_babybear::{/*POSEIDON2_BABYBEAR_16_PARAMS , */POSEIDON2_BABYBEAR_24_PARAMS}; -use zkhash::fields::babybear::FpBabyBear; -use ark_serialize::{CanonicalSerialize, CanonicalDeserialize}; -use std::marker::PhantomData; -use risc0_zkvm::guest::env::cycle_count; - -use ark_ff::PrimeField; - -pub trait MerkleTreeHash { - fn compress(&self, input: &[&F]) -> Vec; -} - -#[derive(Clone, Debug)] -pub struct MerkleTree> { - perm: P, - field: PhantomData, -} - -impl> MerkleTree { - pub fn new(perm: P) -> Self { - MerkleTree { - perm, - field: PhantomData, - } - } - - fn round_up_pow_n(input: usize, n: usize) -> usize { - debug_assert!(n >= 1); - let mut res = 1; - // try powers, starting from n - loop { - res *= n; - if res >= input { - break; - } - } - res - } - - pub fn accumulate(&mut self, set: &[F]) -> Vec { - assert!(set.len()%8 == 0); - let set_size = set.len() / 8; - let mut bound = Self::round_up_pow_n(set_size, 2); - loop { - if bound >= 2 { - break; - } - bound *= 2; - } - let mut nodes: Vec = Vec::with_capacity(bound * 8); - for s in set { - nodes.push(s.to_owned()); - } - // pad - for _ in nodes.len()..bound { - nodes.push(nodes[set_size * 8 - 1].to_owned()); - } - - while nodes.len() > 8 { - let new_len = nodes.len() / 2; - let mut new_nodes: Vec = Vec::with_capacity(new_len); - for i in (0..nodes.len()).step_by(16) { - let inp = [ - &nodes[i], &nodes[i + 1], &nodes[i + 2], &nodes[i + 3], &nodes[i + 4], &nodes[i + 5], &nodes[i + 6], &nodes[i + 7], - &nodes[i + 8], &nodes[i + 9], &nodes[i + 10], &nodes[i + 11], &nodes[i + 12], &nodes[i + 13], &nodes[i + 14], &nodes[i + 15] - ]; - let dig = self.perm.compress(&inp); - - for j in 0..8 { - new_nodes.push(dig[j]); - } - - } - nodes = new_nodes; - } - vec![nodes[0].to_owned(), nodes[1].to_owned(), nodes[2].to_owned(), nodes[3].to_owned(), nodes[4].to_owned(), nodes[5].to_owned(), nodes[6].to_owned(), nodes[7].to_owned()] - } -} - -impl MerkleTreeHash for Poseidon2 { - fn compress(&self, input: &[&F]) -> Vec { - let p = self.permutation(&[ - input[0].to_owned(), input[1].to_owned(),input[2].to_owned(), input[3].to_owned(),input[4].to_owned(), input[5].to_owned(),input[6].to_owned(), input[7].to_owned(), - input[8].to_owned(), input[9].to_owned(),input[10].to_owned(), input[11].to_owned(),input[12].to_owned(), input[13].to_owned(),input[14].to_owned(), input[15].to_owned(), - F::zero(), F::zero(), F::zero(), F::zero(), F::zero(), F::zero(), F::zero(), F::zero() - ]); - - vec![p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]] - } -} - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec> = env::read(); - - let cycles1 = cycle_count(); - let mut hash_data: Vec = Vec::new(); - for i in 0..data.len() { - let a_uncompressed = FpBabyBear::deserialize_uncompressed(&**data.get(i).unwrap()).unwrap(); - hash_data.push(a_uncompressed); - } - let cycles2 = cycle_count(); - - - let permutation = poseidon2::Poseidon2::new(&POSEIDON2_BABYBEAR_24_PARAMS); - let mut merkle_tree = MerkleTree::new(permutation.clone()); - let cycles3 = cycle_count(); - let hash_final = merkle_tree.accumulate(&hash_data); - - let cycles4 = cycle_count(); - - let mut perm_seralised: Vec> = Vec::new(); - for i in 0..8 { - let mut temp: Vec = Vec::new(); - hash_final.get(i).unwrap().serialize_uncompressed(&mut temp).unwrap(); - perm_seralised.push(temp); - } - let cycles6 = cycle_count(); - - env::commit(&perm_seralised); - - eprintln!("number of cycles for input builder: {:?}", cycles2 - cycles1); - eprintln!("number of cycles for hash permutation builder: {:?}", cycles3 - cycles2); - eprintln!("number of cycles for hash accumulation: {:?}", cycles4 - cycles3); - - eprintln!("number of cycles for permutation seralisation: {:?}", cycles6 - cycles4); - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear_native.rs b/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear_native.rs deleted file mode 100644 index 9b47b7b..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/poseidon2_babybear_native.rs +++ /dev/null @@ -1,1762 +0,0 @@ -#![no_main] -#![allow(non_snake_case)] -use risc0_core::field::baby_bear::BabyBearElem; -use risc0_zkvm::guest::env; -use std::marker::PhantomData; -use std::sync::Arc; -use risc0_core::field::Elem; -use lazy_static::lazy_static; -use risc0_zkvm::guest::env::cycle_count; - -// This code is adapted from https://github.com/HorizenLabs/poseidon2/tree/main -#[derive(Clone, Debug)] -pub struct Poseidon2Params { - pub(crate) t: usize, // statesize - pub(crate) d: usize, // sbox degree - pub(crate) rounds_f_beginning: usize, - pub(crate) rounds_p: usize, - #[allow(dead_code)] - pub(crate) rounds_f_end: usize, - pub(crate) rounds: usize, - pub(crate) mat_internal_diag_m_1: Vec, - pub(crate) _mat_internal: Vec>, - pub(crate) round_constants: Vec>, -} - -impl Poseidon2Params { - #[allow(clippy::too_many_arguments)] - - pub const INIT_SHAKE: &'static str = "Poseidon2"; - - pub fn new( - t: usize, - d: usize, - rounds_f: usize, - rounds_p: usize, - mat_internal_diag_m_1: &[F], - mat_internal: &[Vec], - round_constants: &[Vec], - ) -> Self { - assert!(d == 3 || d == 5 || d == 7 || d == 11); - assert_eq!(rounds_f % 2, 0); - let r = rounds_f / 2; - let rounds = rounds_f + rounds_p; - - Poseidon2Params { - t, - d, - rounds_f_beginning: r, - rounds_p, - rounds_f_end: r, - rounds, - mat_internal_diag_m_1: mat_internal_diag_m_1.to_owned(), - _mat_internal: mat_internal.to_owned(), - round_constants: round_constants.to_owned(), - } - } -} -#[derive(Clone, Debug)] -pub struct Poseidon2 { - pub(crate) params: Arc>, -} - -impl Poseidon2 { - pub fn new(params: &Arc>) -> Self { - Poseidon2 { - params: Arc::clone(params), - } - } - - pub fn get_t(&self) -> usize { - self.params.t - } - - pub fn permutation(&self, input: &[F]) -> Vec { - let t = self.params.t; - assert_eq!(input.len(), t); - - let mut current_state = input.to_owned(); - - // Linear layer at beginning - self.matmul_external(&mut current_state); - - for r in 0..self.params.rounds_f_beginning { - current_state = self.add_rc(¤t_state, &self.params.round_constants[r]); - current_state = self.sbox(¤t_state); - self.matmul_external(&mut current_state); - } - - let p_end = self.params.rounds_f_beginning + self.params.rounds_p; - for r in self.params.rounds_f_beginning..p_end { - current_state[0].add_assign(self.params.round_constants[r][0]); - current_state[0] = self.sbox_p(¤t_state[0]); - self.matmul_internal(&mut current_state, &self.params.mat_internal_diag_m_1); - } - - for r in p_end..self.params.rounds { - current_state = self.add_rc(¤t_state, &self.params.round_constants[r]); - current_state = self.sbox(¤t_state); - self.matmul_external(&mut current_state); - } - current_state - } - - fn sbox(&self, input: &[F]) -> Vec { - input.iter().map(|el| self.sbox_p(el)).collect() - } - - fn sbox_p(&self, input: &F) -> F { - let mut input2 = *input; - input2.mul_assign(input2); - - match self.params.d { - 3 => { - let mut out = input2; - out.mul_assign(*input); - out - } - 5 => { - let mut out = input2; - out.mul_assign(out); - out.mul_assign(*input); - out - } - 7 => { - let mut out = input2; - out.mul_assign(out); - out.mul_assign(input2); - out.mul_assign(*input); - out - } - _ => { - panic!() - } - } - } - - fn matmul_m4(&self, input: &mut[F]) { - let t = self.params.t; - let t4 = t / 4; - for i in 0..t4 { - let start_index = i * 4; - let mut t_0 = input[start_index]; - t_0.add_assign(input[start_index + 1]); - let mut t_1 = input[start_index + 2]; - t_1.add_assign(input[start_index + 3]); - let mut t_2 = input[start_index + 1]; - t_2.add_assign(t_2); - t_2.add_assign(t_1); - let mut t_3 = input[start_index + 3]; - t_3.add_assign(t_3); - t_3.add_assign(t_0); - let mut t_4 = t_1; - t_4.add_assign(t_4); - t_4.add_assign(t_4); - t_4.add_assign(t_3); - let mut t_5 = t_0; - t_5.add_assign(t_5); - t_5.add_assign(t_5); - t_5.add_assign(t_2); - let mut t_6 = t_3; - t_6.add_assign(t_5); - let mut t_7 = t_2; - t_7.add_assign(t_4); - input[start_index] = t_6; - input[start_index + 1] = t_5; - input[start_index + 2] = t_7; - input[start_index + 3] = t_4; - } - } - - fn matmul_external(&self, input: &mut[F]) { - let t = self.params.t; - match t { - 2 => { - // Matrix circ(2, 1) - let mut sum = input[0]; - sum.add_assign(input[1]); - input[0].add_assign(sum); - input[1].add_assign(sum); - } - 3 => { - // Matrix circ(2, 1, 1) - let mut sum = input[0]; - sum.add_assign(input[1]); - sum.add_assign(input[2]); - input[0].add_assign(sum); - input[1].add_assign(sum); - input[2].add_assign(sum); - } - 4 => { - // Applying cheap 4x4 MDS matrix to each 4-element part of the state - self.matmul_m4(input); - } - 8 | 12 | 16 | 20 | 24 => { - // Applying cheap 4x4 MDS matrix to each 4-element part of the state - self.matmul_m4(input); - - // Applying second cheap matrix for t > 4 - let t4 = t / 4; - let mut stored = [F::ZERO; 4]; - for l in 0..4 { - stored[l] = input[l]; - for j in 1..t4 { - stored[l].add_assign(input[4 * j + l]); - } - } - for i in 0..input.len() { - input[i].add_assign(stored[i % 4]); - } - } - _ => { - panic!() - } - } - } - - fn matmul_internal(&self, input: &mut[F], mat_internal_diag_m_1: &[F]) { - let t = self.params.t; - - match t { - 2 => { - // [2, 1] - // [1, 3] - let mut sum = input[0]; - sum.add_assign(input[1]); - input[0].add_assign(sum); - input[1].add_assign(input[1]); - input[1].add_assign(sum); - } - 3 => { - // [2, 1, 1] - // [1, 2, 1] - // [1, 1, 3] - let mut sum = input[0]; - sum.add_assign(input[1]); - sum.add_assign(input[2]); - input[0].add_assign(sum); - input[1].add_assign(sum); - input[2].add_assign(input[2]); - input[2].add_assign(sum); - } - 4 | 8 | 12 | 16 | 20 | 24 => { - // Compute input sum - let mut sum = input[0]; - input - .iter() - .skip(1) - .take(t-1) - .for_each(|el| sum.add_assign(*el)); - // Add sum + diag entry * element to each element - for i in 0..input.len() { - input[i].mul_assign(mat_internal_diag_m_1[i]); - input[i].add_assign(sum); - } - } - _ => { - panic!() - } - } - } - - fn add_rc(&self, input: &[F], rc: &[F]) -> Vec { - input - .iter() - .zip(rc.iter()) - .map(|(a, b)| { - let mut r = *a; - r.add_assign(*b); - r - }) - .collect() - } -} - - -//merkle tree -pub trait MerkleTreeHash { - fn compress(&self, input: &[&F]) -> Vec; -} - -#[derive(Clone, Debug)] -pub struct MerkleTree> { - perm: P, - field: PhantomData, -} - -impl> MerkleTree { - pub fn new(perm: P) -> Self { - MerkleTree { - perm, - field: PhantomData, - } - } - - fn round_up_pow_n(input: usize, n: usize) -> usize { - debug_assert!(n >= 1); - let mut res = 1; - // try powers, starting from n - loop { - res *= n; - if res >= input { - break; - } - } - res - } - - pub fn accumulate(&mut self, set: &[F]) -> Vec { - assert!(set.len()%8 == 0); - let set_size = set.len() / 8; - let mut bound = Self::round_up_pow_n(set_size, 2); - loop { - if bound >= 2 { - break; - } - bound *= 2; - } - let mut nodes: Vec = Vec::with_capacity(bound * 8); - for s in set { - nodes.push(s.to_owned()); - } - // pad - for _ in nodes.len()..bound { - nodes.push(nodes[set_size * 8 - 1].to_owned()); - } - - while nodes.len() > 8 { - let new_len = nodes.len() / 2; - let mut new_nodes: Vec = Vec::with_capacity(new_len); - for i in (0..nodes.len()).step_by(16) { - let inp = [ - &nodes[i], &nodes[i + 1], &nodes[i + 2], &nodes[i + 3], &nodes[i + 4], &nodes[i + 5], &nodes[i + 6], &nodes[i + 7], - &nodes[i + 8], &nodes[i + 9], &nodes[i + 10], &nodes[i + 11], &nodes[i + 12], &nodes[i + 13], &nodes[i + 14], &nodes[i + 15] - ]; - let dig = self.perm.compress(&inp); - - for j in 0..8 { - new_nodes.push(dig[j]); - } - - } - nodes = new_nodes; - } - vec![nodes[0].to_owned(), nodes[1].to_owned(), nodes[2].to_owned(), nodes[3].to_owned(), nodes[4].to_owned(), nodes[5].to_owned(), nodes[6].to_owned(), nodes[7].to_owned()] - } -} - -impl MerkleTreeHash for Poseidon2 { - fn compress(&self, input: &[&F]) -> Vec { - let p = self.permutation(&[ - input[0].to_owned(), input[1].to_owned(),input[2].to_owned(), input[3].to_owned(),input[4].to_owned(), input[5].to_owned(),input[6].to_owned(), input[7].to_owned(), - input[8].to_owned(), input[9].to_owned(),input[10].to_owned(), input[11].to_owned(),input[12].to_owned(), input[13].to_owned(),input[14].to_owned(), input[15].to_owned(), - F::ZERO, F::ZERO, F::ZERO, F::ZERO, F::ZERO, F::ZERO, F::ZERO, F::ZERO - ]); - - vec![p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]] - } -} - -//--------------------- -lazy_static!{ -pub static ref MAT_DIAG24_M_1: Vec = vec![ - BabyBearElem::from(0x409133f0 as u32), - BabyBearElem::from(0x1667a8a1 as u32), - BabyBearElem::from(0x06a6c7b6 as u32), - BabyBearElem::from(0x6f53160e as u32), - BabyBearElem::from(0x273b11d1 as u32), - BabyBearElem::from(0x03176c5d as u32), - BabyBearElem::from(0x72f9bbf9 as u32), - BabyBearElem::from(0x73ceba91 as u32), - BabyBearElem::from(0x5cdef81d as u32), - BabyBearElem::from(0x01393285 as u32), - BabyBearElem::from(0x46daee06 as u32), - BabyBearElem::from(0x065d7ba6 as u32), - BabyBearElem::from(0x52d72d6f as u32), - BabyBearElem::from(0x05dd05e0 as u32), - BabyBearElem::from(0x3bab4b63 as u32), - BabyBearElem::from(0x6ada3842 as u32), - BabyBearElem::from(0x2fc5fbec as u32), - BabyBearElem::from(0x770d61b0 as u32), - BabyBearElem::from(0x5715aae9 as u32), - BabyBearElem::from(0x03ef0e90 as u32), - BabyBearElem::from(0x75b6c770 as u32), - BabyBearElem::from(0x242adf5f as u32), - BabyBearElem::from(0x00d0ca4c as u32), - BabyBearElem::from(0x36c0e388 as u32), - ]; - - pub static ref MAT_INTERNAL24: Vec> = vec![ - vec![BabyBearElem::from(0x409133f1 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x1667a8a2 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x06a6c7b7 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x6f53160f as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x273b11d2 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x03176c5e as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x72f9bbfa as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x73ceba92 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x5cdef81e as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x01393286 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x46daee07 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x065d7ba7 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x52d72d70 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x05dd05e1 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x3bab4b64 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x6ada3843 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x2fc5fbed as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x770d61b1 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x5715aaea as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x03ef0e91 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x75b6c771 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x242adf60 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00d0ca4d as u32), - BabyBearElem::from(0x00000001 as u32), - ], - vec![BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x00000001 as u32), - BabyBearElem::from(0x36c0e389 as u32), - ], - ]; - - pub static ref RC24: Vec> = vec![ - vec![BabyBearElem::from(0x0fa20c37 as u32), - BabyBearElem::from(0x0795bb97 as u32), - BabyBearElem::from(0x12c60b9c as u32), - BabyBearElem::from(0x0eabd88e as u32), - BabyBearElem::from(0x096485ca as u32), - BabyBearElem::from(0x07093527 as u32), - BabyBearElem::from(0x1b1d4e50 as u32), - BabyBearElem::from(0x30a01ace as u32), - BabyBearElem::from(0x3bd86f5a as u32), - BabyBearElem::from(0x69af7c28 as u32), - BabyBearElem::from(0x3f94775f as u32), - BabyBearElem::from(0x731560e8 as u32), - BabyBearElem::from(0x465a0ecd as u32), - BabyBearElem::from(0x574ef807 as u32), - BabyBearElem::from(0x62fd4870 as u32), - BabyBearElem::from(0x52ccfe44 as u32), - BabyBearElem::from(0x14772b14 as u32), - BabyBearElem::from(0x4dedf371 as u32), - BabyBearElem::from(0x260acd7c as u32), - BabyBearElem::from(0x1f51dc58 as u32), - BabyBearElem::from(0x75125532 as u32), - BabyBearElem::from(0x686a4d7b as u32), - BabyBearElem::from(0x54bac179 as u32), - BabyBearElem::from(0x31947706 as u32), - ], - vec![BabyBearElem::from(0x29799d3b as u32), - BabyBearElem::from(0x6e01ae90 as u32), - BabyBearElem::from(0x203a7a64 as u32), - BabyBearElem::from(0x4f7e25be as u32), - BabyBearElem::from(0x72503f77 as u32), - BabyBearElem::from(0x45bd3b69 as u32), - BabyBearElem::from(0x769bd6b4 as u32), - BabyBearElem::from(0x5a867f08 as u32), - BabyBearElem::from(0x4fdba082 as u32), - BabyBearElem::from(0x251c4318 as u32), - BabyBearElem::from(0x28f06201 as u32), - BabyBearElem::from(0x6788c43a as u32), - BabyBearElem::from(0x4c6d6a99 as u32), - BabyBearElem::from(0x357784a8 as u32), - BabyBearElem::from(0x2abaf051 as u32), - BabyBearElem::from(0x770f7de6 as u32), - BabyBearElem::from(0x1794b784 as u32), - BabyBearElem::from(0x4796c57a as u32), - BabyBearElem::from(0x724b7a10 as u32), - BabyBearElem::from(0x449989a7 as u32), - BabyBearElem::from(0x64935cf1 as u32), - BabyBearElem::from(0x59e14aac as u32), - BabyBearElem::from(0x0e620bb8 as u32), - BabyBearElem::from(0x3af5a33b as u32), - ], - vec![BabyBearElem::from(0x4465cc0e as u32), - BabyBearElem::from(0x019df68f as u32), - BabyBearElem::from(0x4af8d068 as u32), - BabyBearElem::from(0x08784f82 as u32), - BabyBearElem::from(0x0cefdeae as u32), - BabyBearElem::from(0x6337a467 as u32), - BabyBearElem::from(0x32fa7a16 as u32), - BabyBearElem::from(0x486f62d6 as u32), - BabyBearElem::from(0x386a7480 as u32), - BabyBearElem::from(0x20f17c4a as u32), - BabyBearElem::from(0x54e50da8 as u32), - BabyBearElem::from(0x2012cf03 as u32), - BabyBearElem::from(0x5fe52950 as u32), - BabyBearElem::from(0x09afb6cd as u32), - BabyBearElem::from(0x2523044e as u32), - BabyBearElem::from(0x5c54d0ef as u32), - BabyBearElem::from(0x71c01f3c as u32), - BabyBearElem::from(0x60b2c4fb as u32), - BabyBearElem::from(0x4050b379 as u32), - BabyBearElem::from(0x5e6a70a5 as u32), - BabyBearElem::from(0x418543f5 as u32), - BabyBearElem::from(0x71debe56 as u32), - BabyBearElem::from(0x1aad2994 as u32), - BabyBearElem::from(0x3368a483 as u32), - ], - vec![BabyBearElem::from(0x07a86f3a as u32), - BabyBearElem::from(0x5ea43ff1 as u32), - BabyBearElem::from(0x2443780e as u32), - BabyBearElem::from(0x4ce444f7 as u32), - BabyBearElem::from(0x146f9882 as u32), - BabyBearElem::from(0x3132b089 as u32), - BabyBearElem::from(0x197ea856 as u32), - BabyBearElem::from(0x667030c3 as u32), - BabyBearElem::from(0x2317d5dc as u32), - BabyBearElem::from(0x0c2c48a7 as u32), - BabyBearElem::from(0x56b2df66 as u32), - BabyBearElem::from(0x67bd81e9 as u32), - BabyBearElem::from(0x4fcdfb19 as u32), - BabyBearElem::from(0x4baaef32 as u32), - BabyBearElem::from(0x0328d30a as u32), - BabyBearElem::from(0x6235760d as u32), - BabyBearElem::from(0x12432912 as u32), - BabyBearElem::from(0x0a49e258 as u32), - BabyBearElem::from(0x030e1b70 as u32), - BabyBearElem::from(0x48caeb03 as u32), - BabyBearElem::from(0x49e4d9e9 as u32), - BabyBearElem::from(0x1051b5c6 as u32), - BabyBearElem::from(0x6a36dbbe as u32), - BabyBearElem::from(0x4cff27a5 as u32), - ], - vec![BabyBearElem::from(0x1da78ec2 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x730b0924 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x3eb56cf3 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x5bd93073 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x37204c97 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x51642d89 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x66e943e8 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x1a3e72de as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x70beb1e9 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x30ff3b3f as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x4240d1c4 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x12647b8d as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x65d86965 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x49ef4d7c as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x47785697 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x46b3969f as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x5c7b7a0e as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x7078fc60 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x4f22d482 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x482a9aee as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x6beb839d as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - BabyBearElem::from(0x00000000 as u32), - ], - vec![BabyBearElem::from(0x032959ad as u32), - BabyBearElem::from(0x2b18af6a as u32), - BabyBearElem::from(0x55d3dc8c as u32), - BabyBearElem::from(0x43bd26c8 as u32), - BabyBearElem::from(0x0c41595f as u32), - BabyBearElem::from(0x7048d2e2 as u32), - BabyBearElem::from(0x00db8983 as u32), - BabyBearElem::from(0x2af563d7 as u32), - BabyBearElem::from(0x6e84758f as u32), - BabyBearElem::from(0x611d64e1 as u32), - BabyBearElem::from(0x1f9977e2 as u32), - BabyBearElem::from(0x64163a0a as u32), - BabyBearElem::from(0x5c5fc27b as u32), - BabyBearElem::from(0x02e22561 as u32), - BabyBearElem::from(0x3a2d75db as u32), - BabyBearElem::from(0x1ba7b71a as u32), - BabyBearElem::from(0x34343f64 as u32), - BabyBearElem::from(0x7406b35d as u32), - BabyBearElem::from(0x19df8299 as u32), - BabyBearElem::from(0x6ff4480a as u32), - BabyBearElem::from(0x514a81c8 as u32), - BabyBearElem::from(0x57ab52ce as u32), - BabyBearElem::from(0x6ad69f52 as u32), - BabyBearElem::from(0x3e0c0e0d as u32), - ], - vec![BabyBearElem::from(0x48126114 as u32), - BabyBearElem::from(0x2a9d62cc as u32), - BabyBearElem::from(0x17441f23 as u32), - BabyBearElem::from(0x485762bb as u32), - BabyBearElem::from(0x2f218674 as u32), - BabyBearElem::from(0x06fdc64a as u32), - BabyBearElem::from(0x0861b7f2 as u32), - BabyBearElem::from(0x3b36eee6 as u32), - BabyBearElem::from(0x70a11040 as u32), - BabyBearElem::from(0x04b31737 as u32), - BabyBearElem::from(0x3722a872 as u32), - BabyBearElem::from(0x2a351c63 as u32), - BabyBearElem::from(0x623560dc as u32), - BabyBearElem::from(0x62584ab2 as u32), - BabyBearElem::from(0x382c7c04 as u32), - BabyBearElem::from(0x3bf9edc7 as u32), - BabyBearElem::from(0x0e38fe51 as u32), - BabyBearElem::from(0x376f3b10 as u32), - BabyBearElem::from(0x5381e178 as u32), - BabyBearElem::from(0x3afc61c7 as u32), - BabyBearElem::from(0x5c1bcb4d as u32), - BabyBearElem::from(0x6643ce1f as u32), - BabyBearElem::from(0x2d0af1c1 as u32), - BabyBearElem::from(0x08f583cc as u32), - ], - vec![BabyBearElem::from(0x5d6ff60f as u32), - BabyBearElem::from(0x6324c1e5 as u32), - BabyBearElem::from(0x74412fb7 as u32), - BabyBearElem::from(0x70c0192e as u32), - BabyBearElem::from(0x0b72f141 as u32), - BabyBearElem::from(0x4067a111 as u32), - BabyBearElem::from(0x57388c4f as u32), - BabyBearElem::from(0x351009ec as u32), - BabyBearElem::from(0x0974c159 as u32), - BabyBearElem::from(0x539a58b3 as u32), - BabyBearElem::from(0x038c0cff as u32), - BabyBearElem::from(0x476c0392 as u32), - BabyBearElem::from(0x3f7bc15f as u32), - BabyBearElem::from(0x4491dd2c as u32), - BabyBearElem::from(0x4d1fef55 as u32), - BabyBearElem::from(0x04936ae3 as u32), - BabyBearElem::from(0x58214dd4 as u32), - BabyBearElem::from(0x683c6aad as u32), - BabyBearElem::from(0x1b42f16b as u32), - BabyBearElem::from(0x6dc79135 as u32), - BabyBearElem::from(0x2d4e71ec as u32), - BabyBearElem::from(0x3e2946ea as u32), - BabyBearElem::from(0x59dce8db as u32), - BabyBearElem::from(0x6cee892a as u32), - ], - vec![BabyBearElem::from(0x47f07350 as u32), - BabyBearElem::from(0x7106ce93 as u32), - BabyBearElem::from(0x3bd4a7a9 as u32), - BabyBearElem::from(0x2bfe636a as u32), - BabyBearElem::from(0x430011e9 as u32), - BabyBearElem::from(0x001cd66a as u32), - BabyBearElem::from(0x307faf5b as u32), - BabyBearElem::from(0x0d9ef3fe as u32), - BabyBearElem::from(0x6d40043a as u32), - BabyBearElem::from(0x2e8f470c as u32), - BabyBearElem::from(0x1b6865e8 as u32), - BabyBearElem::from(0x0c0e6c01 as u32), - BabyBearElem::from(0x4d41981f as u32), - BabyBearElem::from(0x423b9d3d as u32), - BabyBearElem::from(0x410408cc as u32), - BabyBearElem::from(0x263f0884 as u32), - BabyBearElem::from(0x5311bbd0 as u32), - BabyBearElem::from(0x4dae58d8 as u32), - BabyBearElem::from(0x30401cea as u32), - BabyBearElem::from(0x09afa575 as u32), - BabyBearElem::from(0x4b3d5b42 as u32), - BabyBearElem::from(0x63ac0b37 as u32), - BabyBearElem::from(0x5fe5bb14 as u32), - BabyBearElem::from(0x5244e9d4 as u32), - ], - ]; - - pub static ref POSEIDON2_BABYBEAR_24_PARAMS: Arc> = Arc::new(Poseidon2Params::new(24, 7, 8, 21, &MAT_DIAG24_M_1, &MAT_INTERNAL24, &RC24)); - -} - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec = env::read(); - - let cycles1 = cycle_count(); - let mut hash_data: Vec = Vec::new(); - for i in 0..data.len() { - let a_uncompressed = BabyBearElem::from(*data.get(i).unwrap()); - hash_data.push(a_uncompressed); - } - let cycles2 = cycle_count(); - - - let permutation = Poseidon2::new(&POSEIDON2_BABYBEAR_24_PARAMS); - let mut merkle_tree = MerkleTree::new(permutation.clone()); - let cycles3 = cycle_count(); - let hash_final = merkle_tree.accumulate(&hash_data); - - let cycles4 = cycle_count(); - - let mut perm_seralised: Vec = Vec::new(); - for i in 0..8 { - let temp: u32 = hash_final.get(i).unwrap().into(); - perm_seralised.push(temp); - - } - let cycles6 = cycle_count(); - - env::commit(&perm_seralised); - - eprintln!("number of cycles for input builder: {:?}", cycles2 - cycles1); - eprintln!("number of cycles for hash permutation builder: {:?}", cycles3 - cycles2); - eprintln!("number of cycles for hash accumulation: {:?}", cycles4 - cycles3); - - eprintln!("number of cycles for permutation seralisation: {:?}", cycles6 - cycles4); - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/poseidon2_bn128.rs b/hash/risc0/bench/methods/guest/src/bin/poseidon2_bn128.rs deleted file mode 100644 index e6bc443..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/poseidon2_bn128.rs +++ /dev/null @@ -1,43 +0,0 @@ -#![no_main] -use risc0_zkvm::{guest::env/* , sha::Digest*/}; -// use sha3::{Digest as _, Keccak256}; -use zkhash::poseidon2::poseidon2; -use zkhash::poseidon2::poseidon2_instance_bn256::POSEIDON2_BN256_PARAMS; -use zkhash::merkle_tree::merkle_tree_fp::MerkleTree; -use zkhash::fields::bn256::FpBN256; -use ark_serialize::{CanonicalSerialize, CanonicalDeserialize}; -use risc0_zkvm::guest::env::cycle_count; - -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec> = env::read(); - let cycles1 = cycle_count(); - let mut hash_data: Vec = Vec::new(); - for i in 0..data.len() { - let a_uncompressed = FpBN256::deserialize_uncompressed(&**data.get(i).unwrap()).unwrap(); - hash_data.push(a_uncompressed); - } - let cycles2 = cycle_count(); - - let permutation = poseidon2::Poseidon2::new(&POSEIDON2_BN256_PARAMS); - let mut merkle_tree = MerkleTree::new(permutation.clone()); - let cycles4 = cycle_count(); - let hash_final = merkle_tree.accumulate(&hash_data); - let cycles5 = cycle_count(); - - - let mut hash_bytes: Vec = Vec::new(); - hash_final.serialize_uncompressed(&mut hash_bytes).unwrap(); - - let cycles6 = cycle_count(); - - env::commit(&hash_bytes); - - eprintln!("number of cycles for input builder: {:?}", cycles2 - cycles1); - eprintln!("number of cycles for hash builder: {:?}", cycles4 - cycles2); - eprintln!("number of cycles for hash calculation: {:?}", cycles5 - cycles4); - eprintln!("number of cycles for hash serealisation: {:?}", cycles6 - cycles5); - -} diff --git a/hash/risc0/bench/methods/guest/src/bin/sha256.rs b/hash/risc0/bench/methods/guest/src/bin/sha256.rs deleted file mode 100644 index 185a9d7..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/sha256.rs +++ /dev/null @@ -1,14 +0,0 @@ -#![no_main] - -use risc0_zkvm::{guest::env, sha, sha::Sha256}; -risc0_zkvm::guest::entry!(main); -use risc0_zkvm::guest::env::cycle_count; - -pub fn main() { - - let data: Vec = env::read(); - let hash = sha::Impl::hash_bytes(&data); - eprintln!("total cycle count for hashing: {:?}",cycle_count()); - env::commit(&hash) -} - diff --git a/hash/risc0/bench/methods/guest/src/bin/sha256_accelerated.rs b/hash/risc0/bench/methods/guest/src/bin/sha256_accelerated.rs deleted file mode 100644 index 2162da4..0000000 --- a/hash/risc0/bench/methods/guest/src/bin/sha256_accelerated.rs +++ /dev/null @@ -1,21 +0,0 @@ - -// accelerated sha2 crate -#![no_main] - -use risc0_zkvm::guest::env; -use sha2::{Sha256, Digest}; -use risc0_zkvm::guest::env::cycle_count; -// use base16ct::lower::encode_str; -risc0_zkvm::guest::entry!(main); - -pub fn main() { - - let data: Vec = env::read(); - let result = Sha256::digest(data); - let c1 = cycle_count(); - eprintln!("total cycle count for hashing: {:?}",c1); - let result_bytes: [u8;32] = result.into(); - let c2 = cycle_count(); - eprintln!("cycle count to convert into bytes array: {:?}",c2-c1); - env::commit(&result_bytes) -} diff --git a/hash/risc0/bench/methods/src/lib.rs b/hash/risc0/bench/methods/src/lib.rs deleted file mode 100644 index 1bdb308..0000000 --- a/hash/risc0/bench/methods/src/lib.rs +++ /dev/null @@ -1 +0,0 @@ -include!(concat!(env!("OUT_DIR"), "/methods.rs")); diff --git a/hash/risc0/bench/run.sh b/hash/risc0/bench/run.sh deleted file mode 100755 index 79b7df8..0000000 --- a/hash/risc0/bench/run.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -if [ -z ${ZKBENCH_HASH_TYPE} ]; then -ZKBENCH_HASH_TYPE="sha256" -fi - -if [ -z ${ZKBENCH_INPUT_SIZE_BYTES} ]; then -ZKBENCH_INPUT_SIZE_BYTES=1024 -fi - -echo "Running benchmarks with the following configurations:" -echo "HASH = $ZKBENCH_HASH_TYPE" -echo "Input Size (Bytes) = $ZKBENCH_INPUT_SIZE_BYTES" - -# Run the benchmarks -./target/release/benchmark $ZKBENCH_HASH_TYPE $ZKBENCH_INPUT_SIZE_BYTES \ No newline at end of file diff --git a/hash/risc0/bench/run_tree.sh b/hash/risc0/bench/run_tree.sh deleted file mode 100755 index 81a0750..0000000 --- a/hash/risc0/bench/run_tree.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -if [ -z ${ZKBENCH_HASH_TYPE_TREE} ]; then -ZKBENCH_HASH_TYPE_TREE="poseidon2_babybear_native" -fi - -if [ -z ${ZKBENCH_TREE_DEPTH} ]; then -ZKBENCH_TREE_DEPTH=2 -fi - -echo "Running benchmarks with the following configurations:" -echo "HASH = $ZKBENCH_HASH_TYPE_TREE" -echo "Tree Depth = $ZKBENCH_TREE_DEPTH" - -# Run the benchmarks -./target/release/benchmark $ZKBENCH_HASH_TYPE_TREE $ZKBENCH_TREE_DEPTH \ No newline at end of file diff --git a/hash/risc0/bench/rust-toolchain.toml b/hash/risc0/bench/rust-toolchain.toml deleted file mode 100644 index 36614c3..0000000 --- a/hash/risc0/bench/rust-toolchain.toml +++ /dev/null @@ -1,4 +0,0 @@ -[toolchain] -channel = "stable" -components = ["rustfmt", "rust-src"] -profile = "minimal" diff --git a/hash/risc0/bench/src/benches/blake2b.rs b/hash/risc0/bench/src/benches/blake2b.rs deleted file mode 100644 index 75bbf05..0000000 --- a/hash/risc0/bench/src/benches/blake2b.rs +++ /dev/null @@ -1,32 +0,0 @@ -use benchmark_methods::{ - BLAKE2B_ELF, BLAKE2B_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use risc0_zkvm::{ sha}; -// use rand::RngCore; -use std::time::Instant; - -pub fn blake2b_bench(input: Vec) { - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, BLAKE2B_ELF).unwrap(); - - // For example: - let _output: sha::Digest = receipt.journal.decode().unwrap(); - - let elapsed_time1 = start_time.elapsed(); - // verify your receipt - receipt.verify(BLAKE2B_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("verification time: {:?}", elapsed_time2 - elapsed_time1); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/blake3.rs b/hash/risc0/bench/src/benches/blake3.rs deleted file mode 100644 index 2f12a7f..0000000 --- a/hash/risc0/bench/src/benches/blake3.rs +++ /dev/null @@ -1,34 +0,0 @@ -use benchmark_methods::{ - BLAKE3_ELF, BLAKE3_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use risc0_zkvm::{ sha}; -// use rand::RngCore; -use std::time::Instant; - -pub fn blake3_bench(input: Vec) { - - - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - let start_time = Instant::now(); - - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, BLAKE3_ELF).unwrap(); - - // For example: - let _output: sha::Digest = receipt.journal.decode().unwrap(); - - let elapsed_time1 = start_time.elapsed(); - // verify your receipt - receipt.verify(BLAKE3_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("verification time: {:?}", elapsed_time2 - elapsed_time1); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/keccak.rs b/hash/risc0/bench/src/benches/keccak.rs deleted file mode 100644 index 73c8506..0000000 --- a/hash/risc0/bench/src/benches/keccak.rs +++ /dev/null @@ -1,33 +0,0 @@ -use benchmark_methods::{ - KECCAK_ELF, KECCAK_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use risc0_zkvm::{ sha}; -// use rand::RngCore; -use std::time::Instant; - -pub fn keccak_bench(input: Vec) { - - let start_time = Instant::now(); - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, KECCAK_ELF).unwrap(); - - // For example: - let _output: sha::Digest = receipt.journal.decode().unwrap(); - - let elapsed_time1 = start_time.elapsed(); - // verify your receipt - receipt.verify(KECCAK_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("verification time: {:?}", elapsed_time2 - elapsed_time1); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/mod.rs b/hash/risc0/bench/src/benches/mod.rs deleted file mode 100644 index adeeccf..0000000 --- a/hash/risc0/bench/src/benches/mod.rs +++ /dev/null @@ -1,8 +0,0 @@ -pub mod sha256; -pub mod sha256_accelerated; -pub mod keccak; -pub mod blake2b; -pub mod blake3; -pub mod poseidon2_bn128; -pub mod poseidon2_babybear; -pub mod poseidon2_babybear_native; \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/poseidon2_babybear.rs b/hash/risc0/bench/src/benches/poseidon2_babybear.rs deleted file mode 100644 index 7e7a391..0000000 --- a/hash/risc0/bench/src/benches/poseidon2_babybear.rs +++ /dev/null @@ -1,66 +0,0 @@ -#![allow(non_snake_case)] -use benchmark_methods::{ - POSEIDON2_BABYBEAR_ELF, - POSEIDON2_BABYBEAR_ID -}; -use risc0_zkvm::{ - default_prover, - ExecutorEnv -}; -use zkhash::fields::{ - babybear::FpBabyBear, - utils::random_scalar - }; -use std::time::Instant; -use ark_serialize::{ - CanonicalSerialize, - CanonicalDeserialize -}; - - -pub fn poseidon2_babybear_bench(mt_depth: usize) { - - type Scalar = FpBabyBear; - - let t = (1 << mt_depth) * 8; - let mut input_scalar: Vec> = Vec::new(); - - for _ in 0..t { - let mut uncompressed_bytes = Vec::new(); - let a: Scalar = random_scalar(); - a.serialize_uncompressed(&mut uncompressed_bytes).unwrap(); - input_scalar.push(uncompressed_bytes); - } - - let env = ExecutorEnv::builder().write(&input_scalar).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, POSEIDON2_BABYBEAR_ELF).unwrap(); - let elapsed_time = start_time.elapsed(); - - // verify your receipt - receipt.verify(POSEIDON2_BABYBEAR_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - // For example: - let output: Vec> = receipt.journal.decode().unwrap(); - - let mut output_deseralised: Vec = Vec::new(); - - for i in 0..output.len() { - output_deseralised.push(Scalar::deserialize_uncompressed(&**output.get(i).unwrap()).unwrap()); - } - - eprintln!("hash: {:?}", output_deseralised); - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("Verification time: {:?}", elapsed_time2 - elapsed_time); - - // eprintln!("Hash: {:?}", hash_final); - - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/poseidon2_babybear_native.rs b/hash/risc0/bench/src/benches/poseidon2_babybear_native.rs deleted file mode 100644 index d630f7f..0000000 --- a/hash/risc0/bench/src/benches/poseidon2_babybear_native.rs +++ /dev/null @@ -1,47 +0,0 @@ -#![allow(non_snake_case)] -use benchmark_methods::{ - POSEIDON2_BABYBEAR_NATIVE_ELF, - POSEIDON2_BABYBEAR_NATIVE_ID -}; -use risc0_zkvm::{ - default_prover, - ExecutorEnv -}; -use std::time::Instant; -use rand::Rng; - -pub fn poseidon2_babybear_native_bench(mt_depth: usize) { - - let t = (1 << mt_depth) * 8; - let mut input: Vec = Vec::new(); - - for _ in 0..t { - - let mut rng = rand::thread_rng(); - let random_u32: u32 = rng.gen(); - input.push(random_u32); - } - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, POSEIDON2_BABYBEAR_NATIVE_ELF).unwrap(); - let elapsed_time = start_time.elapsed(); - - // verify your receipt - receipt.verify(POSEIDON2_BABYBEAR_NATIVE_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - let output: Vec = receipt.journal.decode().unwrap(); - - eprintln!("hash: {:?}", output); - - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("Verification time: {:?}", elapsed_time2 - elapsed_time); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/poseidon2_bn128.rs b/hash/risc0/bench/src/benches/poseidon2_bn128.rs deleted file mode 100644 index 3ceb77c..0000000 --- a/hash/risc0/bench/src/benches/poseidon2_bn128.rs +++ /dev/null @@ -1,48 +0,0 @@ -use benchmark_methods::{ - POSEIDON2_BN128_ELF, POSEIDON2_BN128_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use zkhash::{fields::{bn256::FpBN256, utils::random_scalar}/* , poseidon2::poseidon2_instance_bn256::POSEIDON2_BN256_PARAMS*/}; -use std::time::Instant; -use ark_serialize::{CanonicalSerialize, CanonicalDeserialize}; - - -pub fn poseidon2_bn128_bench(mt_depth: usize) { - - type Scalar = FpBN256; - - let mut input_scalar: Vec> = Vec::new(); - let number_of_leaves: u32 = 1 << mt_depth; - for _ in 0..number_of_leaves { - let mut uncompressed_bytes = Vec::new(); - let a: Scalar = random_scalar(); - a.serialize_uncompressed(&mut uncompressed_bytes).unwrap(); - input_scalar.push(uncompressed_bytes); - } - - let env = ExecutorEnv::builder().write(&input_scalar).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, POSEIDON2_BN128_ELF).unwrap(); - let elapsed_time = start_time.elapsed(); - - - // verify your receipt - receipt.verify(POSEIDON2_BN128_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - // For example: - let output: Vec = receipt.journal.decode().unwrap(); - - let hash_final = Scalar::deserialize_uncompressed(&*output).unwrap(); - - eprintln!("Hash: {:?}", hash_final); - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("Verification time: {:?}", elapsed_time2 - elapsed_time); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/sha256.rs b/hash/risc0/bench/src/benches/sha256.rs deleted file mode 100644 index 1777f56..0000000 --- a/hash/risc0/bench/src/benches/sha256.rs +++ /dev/null @@ -1,32 +0,0 @@ -use benchmark_methods::{ - SHA256_ELF, SHA256_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use risc0_zkvm::{ sha}; -use std::time::Instant; -pub fn sha_bench(input: Vec) { - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - eprintln!("\n------risc0_zkvm sha hashing------\n"); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, SHA256_ELF).unwrap(); - let elapsed_time = start_time.elapsed(); - - // verify your receipt - receipt.verify(SHA256_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - let _output: sha::Digest = receipt.journal.decode().unwrap(); - - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("Verification time: {:?}", elapsed_time2 - elapsed_time); - - eprintln!("Hash: {:?}", _output); - -} \ No newline at end of file diff --git a/hash/risc0/bench/src/benches/sha256_accelerated.rs b/hash/risc0/bench/src/benches/sha256_accelerated.rs deleted file mode 100644 index 6233cae..0000000 --- a/hash/risc0/bench/src/benches/sha256_accelerated.rs +++ /dev/null @@ -1,30 +0,0 @@ -use benchmark_methods::{ - SHA256_ACCELERATED_ELF, SHA256_ACCELERATED_ID -}; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use std::time::Instant; -use hex::encode; -pub fn sha_accelerated_bench(input: Vec) { - - let env = ExecutorEnv::builder().write(&input).unwrap().build().unwrap(); - eprintln!("\n------RustCrypto sha hashing(accelerated)------\n"); - // Obtain the default prover. - let prover = default_prover(); - - let start_time = Instant::now(); - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, SHA256_ACCELERATED_ELF).unwrap(); - let elapsed_time = start_time.elapsed(); - - // verify your receipt - receipt.verify(SHA256_ACCELERATED_ID).unwrap(); - - let elapsed_time2 = start_time.elapsed(); - - let _output: [u8;32] = receipt.journal.decode().unwrap(); - let hash = encode(_output); - eprintln!("Total time: {:?}", elapsed_time2); - eprintln!("Verification time: {:?}", elapsed_time2 - elapsed_time); - - eprintln!("Hash: {:?}", hash); -} \ No newline at end of file diff --git a/hash/risc0/bench/src/main.rs b/hash/risc0/bench/src/main.rs deleted file mode 100644 index c5ba0f7..0000000 --- a/hash/risc0/bench/src/main.rs +++ /dev/null @@ -1,95 +0,0 @@ -mod benches; -use benches::{ - sha256::sha_bench, - sha256_accelerated::sha_accelerated_bench, - keccak::keccak_bench, - blake2b::blake2b_bench, - blake3::blake3_bench, - poseidon2_bn128::poseidon2_bn128_bench, - poseidon2_babybear::poseidon2_babybear_bench, - poseidon2_babybear_native::poseidon2_babybear_native_bench, -}; -use rand::Rng; -use std::process; - -fn generate_bytes(size: usize) -> Vec { - let mut rng = rand::thread_rng(); - (0..size).map(|_| rng.gen()).collect() -} - - - -fn main() { - let args: Vec = std::env::args().collect(); - - if args.len() != 3 { - println!("Wrong number of arguments! The program expects two arguments: and "); - // Exit the program with a non-zero exit code - process::exit(1); - } - - let hash_type = &args[1]; - let size = args[2].parse::().unwrap(); - - match hash_type.as_str() { - "sha256" => { - println!("SHA256 Benchmarking: "); - eprintln!("data size(bytes): {:?}", size); - let input = generate_bytes(size); - sha_bench(input.clone()); - } - "sha256_accelerated" => { - println!("Accelerated SHA256 Benchmarking: "); - eprintln!("data size(bytes): {:?}", size); - let input = generate_bytes(size); - sha_accelerated_bench(input.clone()); - } - "keccak" => { - println!("KECCAK Benchmarking: "); - eprintln!("data size(bytes): {:?}", size); - let input = generate_bytes(size); - keccak_bench(input.clone()); - } - - "blake2b" => { - println!("Blake2b Benchmarking: "); - eprintln!("data size(bytes): {:?}", size); - let input = generate_bytes(size); - blake2b_bench(input.clone()); - } - - "blake3" => { - println!("Blake3 Benchmarking: "); - eprintln!("data size(bytes): {:?}", size); - let input = generate_bytes(size); - blake3_bench(input.clone()); - } - - "poseidon2_bn128" => { - println!("Poseidon2 Benchmarking on the BN128 field: "); - eprintln!("Tree Depth: {:?}", size); - poseidon2_bn128_bench(size); - } - - "poseidon2_babybear" => { - println!("Poseidon2 Benchmarking on the BabyBear field: "); - eprintln!("Tree Depth: {:?}", size); - eprintln!("number of inputs {:?}", (1 << size) * 8); - poseidon2_babybear_bench(size); - } - - "poseidon2_babybear_native" => { - println!("Poseidon2 Benchmarking on the BabyBear field: "); - eprintln!("Tree Depth: {:?}", size); - eprintln!("number of inputs {:?}", (1 << size) * 8); - poseidon2_babybear_native_bench(size); - } - - _ => { - println!("Wrong Benchmark Name!"); - } - } - - println!("All Done!"); - -} diff --git a/hash/risc0/composition/Cargo.lock b/hash/risc0/composition/Cargo.lock deleted file mode 100644 index d2dff75..0000000 --- a/hash/risc0/composition/Cargo.lock +++ /dev/null @@ -1,2795 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "addchain" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2e69442aa5628ea6951fa33e24efe8313f4321a91bd729fc2f75bdfc858570" -dependencies = [ - "num-bigint 0.3.3", - "num-integer", - "num-traits", -] - -[[package]] -name = "addr2line" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" -dependencies = [ - "cpp_demangle", - "fallible-iterator", - "gimli", - "memmap2", - "object", - "rustc-demangle", - "smallvec", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "ahash" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "aho-corasick" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" -dependencies = [ - "memchr", -] - -[[package]] -name = "anyhow" -version = "1.0.79" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" - -[[package]] -name = "approx" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" -dependencies = [ - "num-traits", -] - -[[package]] -name = "ark-bn254" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-crypto-primitives" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-snark", - "ark-std", - "blake2", - "derivative", - "digest", - "sha2", -] - -[[package]] -name = "ark-ec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" -dependencies = [ - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", - "itertools 0.10.5", - "num-traits", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", - "derivative", - "digest", - "itertools 0.10.5", - "num-bigint 0.4.4", - "num-traits", - "paste", - "rustc_version", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint 0.4.4", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-groth16" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" -dependencies = [ - "ark-crypto-primitives", - "ark-ec", - "ark-ff", - "ark-poly", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-poly" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", -] - -[[package]] -name = "ark-relations" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" -dependencies = [ - "ark-ff", - "ark-std", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "ark-serialize" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" -dependencies = [ - "ark-serialize-derive", - "ark-std", - "digest", - "num-bigint 0.4.4", -] - -[[package]] -name = "ark-serialize-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-snark" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" -dependencies = [ - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-std" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "autotools" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aef8da1805e028a172334c3b680f93e71126f2327622faef2ec3d893c0a4ad77" -dependencies = [ - "cc", -] - -[[package]] -name = "backtrace" -version = "0.3.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "block" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "bonsai-sdk" -version = "0.6.0-rc.2" -dependencies = [ - "reqwest", - "serde", - "thiserror", -] - -[[package]] -name = "bumpalo" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" - -[[package]] -name = "bytemuck" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" -dependencies = [ - "serde", -] - -[[package]] -name = "camino" -version = "1.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "cc" -version = "1.0.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "jobserver", - "libc", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "composition" -version = "0.1.0" -dependencies = [ - "composition-methods", - "inner_proof", - "risc0-zkvm", - "serde", -] - -[[package]] -name = "composition-methods" -version = "0.1.0" -dependencies = [ - "risc0-build", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" - -[[package]] -name = "core-graphics-types" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "libc", -] - -[[package]] -name = "cpp_demangle" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8227005286ec39567949b33df9896bcadfa6051bccca2488129f108ca23119" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "cpufeatures" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" -dependencies = [ - "libc", -] - -[[package]] -name = "crc32fast" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "rand_core", - "subtle", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "cust" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6cc71911e179f12483b9734120b45bd00bf64fab085cc4818428523eedd469" -dependencies = [ - "bitflags 1.3.2", - "bytemuck", - "cust_core", - "cust_derive", - "cust_raw", - "find_cuda_helper", -] - -[[package]] -name = "cust_core" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "039f79662cb8f890cbf335e818cd522d6e3a53fe63f61d1aaaf859cd3d975f06" -dependencies = [ - "cust_derive", - "glam", - "mint", - "vek", -] - -[[package]] -name = "cust_derive" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3bc95fe629aed92b2423de6ccff9e40174b21d19cb6ee6281a4d04ac72f66" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "cust_raw" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf40d6ade12cb9828bbc844b9875c7b93d25e67a3c9bf61c7aa3ae09e402bf8" -dependencies = [ - "find_cuda_helper", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_more" -version = "0.99.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "directories" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - -[[package]] -name = "docker-generate" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf673e0848ef09fa4aeeba78e681cf651c0c7d35f76ee38cec8e55bc32fa111" - -[[package]] -name = "downcast-rs" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" - -[[package]] -name = "downloader" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05213e96f184578b5f70105d4d0a644a168e99e12d7bea0b200c15d67b5c182" -dependencies = [ - "digest", - "futures", - "rand", - "reqwest", - "thiserror", - "tokio", -] - -[[package]] -name = "either" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" - -[[package]] -name = "elf" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4445909572dbd556c457c849c4ca58623d84b27c8fff1e74b0b4227d8b90d17b" - -[[package]] -name = "encoding_rs" -version = "0.8.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "erased-serde" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55d05712b2d8d88102bc9868020c9e5c7a1f5527c452b9b97450a1d006140ba7" -dependencies = [ - "serde", -] - -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "fallible-iterator" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" - -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - -[[package]] -name = "ff" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" -dependencies = [ - "bitvec", - "byteorder", - "ff_derive", - "rand_core", - "subtle", -] - -[[package]] -name = "ff_derive" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9f54704be45ed286151c5e11531316eaef5b8f5af7d597b806fdb8af108d84a" -dependencies = [ - "addchain", - "cfg-if", - "num-bigint 0.3.3", - "num-integer", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "find_cuda_helper" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f9e65c593dd01ac77daad909ea4ad17f0d6d1776193fc8ea766356177abdad" -dependencies = [ - "glob", -] - -[[package]] -name = "fixedbitset" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" - -[[package]] -name = "flate2" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foreign-types" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" -dependencies = [ - "foreign-types-macros", - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-macros" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "foreign-types-shared" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "futures" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" - -[[package]] -name = "futures-executor" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" - -[[package]] -name = "futures-macro" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "futures-sink" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" - -[[package]] -name = "futures-task" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" - -[[package]] -name = "futures-util" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "gimli" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" -dependencies = [ - "fallible-iterator", - "stable_deref_trait", -] - -[[package]] -name = "glam" -version = "0.20.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43e957e744be03f5801a55472f593d43fabdebf25a4585db250f04d86b1675f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - -[[package]] -name = "h2" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" -dependencies = [ - "ahash", -] - -[[package]] -name = "hashbrown" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "hermit-abi" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "http" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "human-repr" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" - -[[package]] -name = "hyper" -version = "0.14.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http", - "hyper", - "rustls", - "tokio", - "tokio-rustls", -] - -[[package]] -name = "idna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "indexmap" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" -dependencies = [ - "equivalent", - "hashbrown 0.14.3", -] - -[[package]] -name = "inner_proof" -version = "0.1.0" -dependencies = [ - "inner_proof-methods", - "rand", - "risc0-zkvm", - "serde", -] - -[[package]] -name = "inner_proof-methods" -version = "0.1.0" -dependencies = [ - "risc0-build", -] - -[[package]] -name = "inventory" -version = "0.3.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8573b2b1fb643a372c73b23f4da5f888677feef3305146d68a539250a9bccc7" - -[[package]] -name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "jobserver" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" -dependencies = [ - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.67" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "lazy-regex" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d12be4595afdf58bd19e4a9f4e24187da2a66700786ff660a418e9059937a4c" -dependencies = [ - "lazy-regex-proc_macros", - "once_cell", - "regex", -] - -[[package]] -name = "lazy-regex-proc_macros" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44bcd58e6c97a7fcbaffcdc95728b393b8d98933bfadad49ed4097845b57ef0b" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.48", -] - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "libc" -version = "0.2.152" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" - -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - -[[package]] -name = "libredox" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" -dependencies = [ - "bitflags 2.4.2", - "libc", - "redox_syscall", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - -[[package]] -name = "log" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" - -[[package]] -name = "malloc_buf" -version = "0.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" -dependencies = [ - "libc", -] - -[[package]] -name = "matrixmultiply" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2" -dependencies = [ - "autocfg", - "rawpointer", -] - -[[package]] -name = "memchr" -version = "2.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" - -[[package]] -name = "memmap2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" -dependencies = [ - "libc", -] - -[[package]] -name = "metal" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "550b24b0cd4cf923f36bae78eca457b3a10d8a6a14a9c84cb2687b527e6a84af" -dependencies = [ - "bitflags 1.3.2", - "block", - "core-graphics-types", - "foreign-types", - "log", - "objc", - "paste", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "miniz_oxide" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" -dependencies = [ - "adler", -] - -[[package]] -name = "mint" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e53debba6bda7a793e5f99b8dacf19e626084f525f7829104ba9898f367d85ff" - -[[package]] -name = "mio" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" -dependencies = [ - "libc", - "wasi", - "windows-sys 0.48.0", -] - -[[package]] -name = "multimap" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" - -[[package]] -name = "ndarray" -version = "0.15.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32" -dependencies = [ - "matrixmultiply", - "num-complex", - "num-integer", - "num-traits", - "rawpointer", - "rayon", -] - -[[package]] -name = "num-bigint" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6f7833f2cbf2360a6cfd58cd41a53aa7a90bd4c202f5b1c7dd2ed73c57b2c3" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-complex" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-derive" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", -] - -[[package]] -name = "objc" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" -dependencies = [ - "malloc_buf", - "objc_exception", -] - -[[package]] -name = "objc_exception" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" -dependencies = [ - "cc", -] - -[[package]] -name = "object" -version = "0.32.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" -dependencies = [ - "flate2", - "memchr", - "ruzstd", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - -[[package]] -name = "paste" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "petgraph" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" -dependencies = [ - "fixedbitset", - "indexmap", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "prettyplease" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" -dependencies = [ - "proc-macro2", - "syn 2.0.48", -] - -[[package]] -name = "proc-macro2" -version = "1.0.76" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "prost" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a" -dependencies = [ - "bytes", - "prost-derive", -] - -[[package]] -name = "prost-build" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2" -dependencies = [ - "bytes", - "heck", - "itertools 0.11.0", - "log", - "multimap", - "once_cell", - "petgraph", - "prettyplease", - "prost", - "prost-types", - "regex", - "syn 2.0.48", - "tempfile", - "which", -] - -[[package]] -name = "prost-derive" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e" -dependencies = [ - "anyhow", - "itertools 0.11.0", - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "prost-types" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e" -dependencies = [ - "prost", -] - -[[package]] -name = "protobuf-src" -version = "1.1.0+21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7ac8852baeb3cc6fb83b93646fb93c0ffe5d14bf138c945ceb4b9948ee0e3c1" -dependencies = [ - "autotools", -] - -[[package]] -name = "quote" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rawpointer" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" - -[[package]] -name = "rayon" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "redox_syscall" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" -dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "redox_users" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" -dependencies = [ - "getrandom", - "libredox", - "thiserror", -] - -[[package]] -name = "regex" -version = "1.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" - -[[package]] -name = "reqwest" -version = "0.11.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41" -dependencies = [ - "base64", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-rustls", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls", - "rustls-pemfile", - "serde", - "serde_json", - "serde_urlencoded", - "system-configuration", - "tokio", - "tokio-rustls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots", - "winreg", -] - -[[package]] -name = "ring" -version = "0.17.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" -dependencies = [ - "cc", - "getrandom", - "libc", - "spin", - "untrusted", - "windows-sys 0.48.0", -] - -[[package]] -name = "risc0-binfmt" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "elf", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "tracing", -] - -[[package]] -name = "risc0-build" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "cargo_metadata", - "docker-generate", - "risc0-binfmt", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "serde_json", - "tempfile", -] - -[[package]] -name = "risc0-build-kernel" -version = "0.20.0-rc.2" -dependencies = [ - "cc", - "directories", - "hex", - "sha2", - "tempfile", -] - -[[package]] -name = "risc0-circuit-recursion" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "bytemuck", - "cust", - "downloader", - "metal", - "rand", - "rayon", - "risc0-circuit-recursion-sys", - "risc0-core", - "risc0-zkp", - "sha2", - "tracing", - "zip", -] - -[[package]] -name = "risc0-circuit-recursion-sys" -version = "0.20.0-rc.2" -dependencies = [ - "glob", - "risc0-build-kernel", - "risc0-core", -] - -[[package]] -name = "risc0-circuit-rv32im" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "cust", - "metal", - "rand", - "rayon", - "risc0-circuit-rv32im-sys", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "tracing", -] - -[[package]] -name = "risc0-circuit-rv32im-sys" -version = "0.20.0-rc.2" -dependencies = [ - "glob", - "risc0-build-kernel", - "risc0-core", -] - -[[package]] -name = "risc0-core" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "rand_core", -] - -[[package]] -name = "risc0-sppark" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be1d1ff7fe501c9f420654bc1ff7461909b85e7f8fb3698a8812c0a8a787306" -dependencies = [ - "cc", - "which", -] - -[[package]] -name = "risc0-sys" -version = "0.20.0-rc.2" -dependencies = [ - "cc", - "cust", - "risc0-build-kernel", - "risc0-sppark", -] - -[[package]] -name = "risc0-zkp" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "blake2", - "bytemuck", - "cust", - "digest", - "ff", - "hex", - "lazy_static", - "metal", - "ndarray", - "paste", - "rand", - "rand_core", - "rayon", - "risc0-core", - "risc0-sys", - "risc0-zkvm-platform", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm" -version = "0.20.0-rc.2" -dependencies = [ - "addr2line", - "anyhow", - "ark-bn254", - "ark-groth16", - "ark-serialize", - "bincode", - "bonsai-sdk", - "bytemuck", - "bytes", - "cfg-if", - "crypto-bigint", - "elf", - "getrandom", - "hex", - "human-repr", - "lazy-regex", - "num-bigint 0.4.4", - "num-derive", - "num-traits", - "prost", - "prost-build", - "protobuf-src", - "rayon", - "risc0-binfmt", - "risc0-circuit-recursion", - "risc0-circuit-rv32im", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "rrs-lib", - "rustc-demangle", - "semver", - "serde", - "sha2", - "tempfile", - "tracing", - "typetag", -] - -[[package]] -name = "risc0-zkvm-platform" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "getrandom", - "libm", -] - -[[package]] -name = "rrs-lib" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4382d3af3a4ebdae7f64ba6edd9114fff92c89808004c4943b393377a25d001" -dependencies = [ - "downcast-rs", - "paste", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls" -version = "0.21.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" -dependencies = [ - "log", - "ring", - "rustls-webpki", - "sct", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64", -] - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "ruzstd" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c4eb8a81997cf040a091d1f7e1938aeab6749d3a0dfa73af43cdc32393483d" -dependencies = [ - "byteorder", - "derive_more", - "twox-hash", -] - -[[package]] -name = "ryu" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "semver" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" -dependencies = [ - "serde", -] - -[[package]] -name = "serde" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "serde_json" -version = "1.0.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b187f0231d56fe41bfb12034819dd2bf336422a5866de41bc3fec4b2e3883e8" - -[[package]] -name = "socket2" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" -dependencies = [ - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" - -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "subtle" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.48" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - -[[package]] -name = "thiserror" -version = "1.0.56" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.56" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "tinyvec" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.35.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio", - "num_cpus", - "pin-project-lite", - "socket2", - "windows-sys 0.48.0", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls", - "tokio", -] - -[[package]] -name = "tokio-util" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", - "tracing", -] - -[[package]] -name = "tower-service" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" - -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-subscriber" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" -dependencies = [ - "tracing-core", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "twox-hash" -version = "1.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" -dependencies = [ - "cfg-if", - "static_assertions", -] - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "typetag" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43148481c7b66502c48f35b8eef38b6ccdc7a9f04bd4cc294226d901ccc9bc7" -dependencies = [ - "erased-serde", - "inventory", - "once_cell", - "serde", - "typetag-impl", -] - -[[package]] -name = "typetag-impl" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291db8a81af4840c10d636e047cac67664e343be44e24dfdbd1492df9a5d3390" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" - -[[package]] -name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" - -[[package]] -name = "unicode-normalization" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" -dependencies = [ - "form_urlencoded", - "idna", - "percent-encoding", -] - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "vek" -version = "0.15.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8085882662f9bc47fc8b0cdafa5e19df8f592f650c02b9083da8d45ac9eebd17" -dependencies = [ - "approx", - "num-integer", - "num-traits", - "rustc_version", -] - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasm-bindgen" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" -dependencies = [ - "cfg-if", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" -dependencies = [ - "bumpalo", - "log", - "once_cell", - "proc-macro2", - "quote", - "syn 2.0.48", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" -dependencies = [ - "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" - -[[package]] -name = "web-sys" -version = "0.3.67" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "0.25.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10" - -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "zerocopy" -version = "0.7.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "zeroize" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "byteorder", - "crc32fast", - "crossbeam-utils", - "flate2", -] diff --git a/hash/risc0/composition/Cargo.toml b/hash/risc0/composition/Cargo.toml deleted file mode 100644 index 9dd76d2..0000000 --- a/hash/risc0/composition/Cargo.toml +++ /dev/null @@ -1,16 +0,0 @@ -[package] -name = "composition" -version = "0.1.0" -edition = "2021" - -[dependencies] -composition-methods = { path = "methods" } -inner_proof = { path = "../inner_proof" } -risc0-zkvm = { path = "../external/risc0/risc0/zkvm" } -serde = "1.0" - -[features] -cuda = ["risc0-zkvm/cuda"] -default = [] -metal = ["risc0-zkvm/metal"] -prove = ["risc0-zkvm/prove"] diff --git a/hash/risc0/composition/build.sh b/hash/risc0/composition/build.sh deleted file mode 100755 index 7f1b114..0000000 --- a/hash/risc0/composition/build.sh +++ /dev/null @@ -1 +0,0 @@ -cargo build --release \ No newline at end of file diff --git a/hash/risc0/composition/methods/Cargo.toml b/hash/risc0/composition/methods/Cargo.toml deleted file mode 100644 index be6e230..0000000 --- a/hash/risc0/composition/methods/Cargo.toml +++ /dev/null @@ -1,10 +0,0 @@ -[package] -name = "composition-methods" -version = "0.1.0" -edition = "2021" - -[build-dependencies] -risc0-build = { path = "../../external/risc0/risc0/build" } - -[package.metadata.risc0] -methods = ["guest"] diff --git a/hash/risc0/composition/methods/build.rs b/hash/risc0/composition/methods/build.rs deleted file mode 100644 index a4aa256..0000000 --- a/hash/risc0/composition/methods/build.rs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -fn main() { - risc0_build::embed_methods(); -} diff --git a/hash/risc0/composition/methods/guest/Cargo.lock b/hash/risc0/composition/methods/guest/Cargo.lock deleted file mode 100644 index 4077f62..0000000 --- a/hash/risc0/composition/methods/guest/Cargo.lock +++ /dev/null @@ -1,1100 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "ahash" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "anyhow" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" - -[[package]] -name = "ark-bn254" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-crypto-primitives" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-snark", - "ark-std", - "blake2", - "derivative", - "digest", - "sha2", -] - -[[package]] -name = "ark-ec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" -dependencies = [ - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown", - "itertools", - "num-traits", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", - "derivative", - "digest", - "itertools", - "num-bigint", - "num-traits", - "paste", - "rustc_version", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-groth16" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" -dependencies = [ - "ark-crypto-primitives", - "ark-ec", - "ark-ff", - "ark-poly", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-poly" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown", -] - -[[package]] -name = "ark-relations" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" -dependencies = [ - "ark-ff", - "ark-std", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "ark-serialize" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" -dependencies = [ - "ark-serialize-derive", - "ark-std", - "digest", - "num-bigint", -] - -[[package]] -name = "ark-serialize-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-snark" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" -dependencies = [ - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-std" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "block-buffer" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" -dependencies = [ - "generic-array", -] - -[[package]] -name = "bytemuck" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aca418a974d83d40a0c1f0c5cba6ff4bc28d8df099109ca459a2118d40b6322" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "camino" -version = "1.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "composition-method" -version = "0.1.0" -dependencies = [ - "bytemuck", - "inner_proof-methods", - "risc0-zkvm", -] - -[[package]] -name = "const-oid" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "795bc6e66a8e340f075fcf6227e417a2dc976b92b91f3cdc778bb858778b6747" - -[[package]] -name = "cpufeatures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" -dependencies = [ - "libc", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "digest" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" -dependencies = [ - "block-buffer", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "docker-generate" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf673e0848ef09fa4aeeba78e681cf651c0c7d35f76ee38cec8e55bc32fa111" - -[[package]] -name = "downcast-rs" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" - -[[package]] -name = "either" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" - -[[package]] -name = "elf" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b183d6ce6ca4cf30e3db37abf5b52568b5f9015c97d9fbdd7026aa5dcdd758" - -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - -[[package]] -name = "generic-array" -version = "0.14.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" -dependencies = [ - "ahash", -] - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "human-repr" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" - -[[package]] -name = "inner_proof-methods" -version = "0.1.0" -dependencies = [ - "risc0-build", -] - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "libc" -version = "0.2.151" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4" - -[[package]] -name = "libm" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" - -[[package]] -name = "linux-raw-sys" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456" - -[[package]] -name = "log" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" - -[[package]] -name = "num-bigint" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-derive" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" -dependencies = [ - "autocfg", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "paste" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba" - -[[package]] -name = "pin-project-lite" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" - -[[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "proc-macro2" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" - -[[package]] -name = "redox_syscall" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" -dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "risc0-binfmt" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "elf", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "tracing", -] - -[[package]] -name = "risc0-build" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "cargo_metadata", - "docker-generate", - "risc0-binfmt", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "serde_json", - "tempfile", -] - -[[package]] -name = "risc0-circuit-recursion" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "bytemuck", - "risc0-core", - "risc0-zkp", - "tracing", -] - -[[package]] -name = "risc0-circuit-rv32im" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "tracing", -] - -[[package]] -name = "risc0-core" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "rand_core", -] - -[[package]] -name = "risc0-zkp" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "blake2", - "bytemuck", - "digest", - "hex", - "paste", - "rand_core", - "risc0-core", - "risc0-zkvm-platform", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "ark-bn254", - "ark-groth16", - "ark-serialize", - "bytemuck", - "cfg-if", - "getrandom", - "hex", - "human-repr", - "num-bigint", - "num-derive", - "num-traits", - "risc0-binfmt", - "risc0-circuit-recursion", - "risc0-circuit-rv32im", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "rrs-lib", - "semver", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm-platform" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "getrandom", - "libm", -] - -[[package]] -name = "rrs-lib" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4382d3af3a4ebdae7f64ba6edd9114fff92c89808004c4943b393377a25d001" -dependencies = [ - "downcast-rs", - "paste", -] - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - -[[package]] -name = "rustix" -version = "0.38.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316" -dependencies = [ - "bitflags 2.4.1", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "ryu" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" - -[[package]] -name = "semver" -version = "1.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" -dependencies = [ - "serde", -] - -[[package]] -name = "serde" -version = "1.0.193" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.193" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "serde_json" -version = "1.0.108" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "sha2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "subtle" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" - -[[package]] -name = "syn" -version = "1.0.107" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "tempfile" -version = "3.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.48.0", -] - -[[package]] -name = "thiserror" -version = "1.0.51" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f11c217e1416d6f036b870f14e0413d480dbf28edbee1f877abaf0206af43bb7" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.51" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01742297787513b79cf8e29d1056ede1313e2420b7b3b15d0a768b4921f549df" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "tracing" -version = "0.1.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" -dependencies = [ - "cfg-if", - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "tracing-core" -version = "0.1.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-subscriber" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" -dependencies = [ - "tracing-core", -] - -[[package]] -name = "typenum" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" - -[[package]] -name = "unicode-ident" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - -[[package]] -name = "zerocopy" -version = "0.7.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "zeroize" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] diff --git a/hash/risc0/composition/methods/guest/Cargo.toml b/hash/risc0/composition/methods/guest/Cargo.toml deleted file mode 100644 index 6dd09c0..0000000 --- a/hash/risc0/composition/methods/guest/Cargo.toml +++ /dev/null @@ -1,11 +0,0 @@ -[package] -name = "composition-method" -version = "0.1.0" -edition = "2021" - -[workspace] - -[dependencies] -risc0-zkvm = { path = "../../../external/risc0/risc0/zkvm", features = ["std"], default-features = false } -inner_proof-methods = { path = "../../../inner_proof/methods" } -bytemuck = "1.14" diff --git a/hash/risc0/composition/methods/guest/src/main.rs b/hash/risc0/composition/methods/guest/src/main.rs deleted file mode 100644 index c575ece..0000000 --- a/hash/risc0/composition/methods/guest/src/main.rs +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use inner_proof_methods::INNER_PROOF_METHOD_ID; -use risc0_zkvm::{guest::env, serde}; -use risc0_zkvm::sha; -fn main() { - let c1 = env::cycle_count(); - let hash: sha::Digest = env::read(); - let hash2: sha::Digest = env::read(); - let c2 = env::cycle_count(); - - env::verify(INNER_PROOF_METHOD_ID, &serde::to_vec(&hash).unwrap()).unwrap(); - env::verify(INNER_PROOF_METHOD_ID, &serde::to_vec(&hash2).unwrap()).unwrap(); - let c3 = env::cycle_count(); - eprintln!("cycles for input builder: {:?}", c2 - c1); - eprintln!("cycles for inner_proof verification inside guest: {:?}", c3 - c2); - env::commit(&hash); -} - diff --git a/hash/risc0/composition/methods/src/lib.rs b/hash/risc0/composition/methods/src/lib.rs deleted file mode 100644 index ae9d61e..0000000 --- a/hash/risc0/composition/methods/src/lib.rs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -include!(concat!(env!("OUT_DIR"), "/methods.rs")); diff --git a/hash/risc0/composition/run.sh b/hash/risc0/composition/run.sh deleted file mode 100755 index bd6dfec..0000000 --- a/hash/risc0/composition/run.sh +++ /dev/null @@ -1 +0,0 @@ -./target/release/composition 32 \ No newline at end of file diff --git a/hash/risc0/composition/src/main.rs b/hash/risc0/composition/src/main.rs deleted file mode 100644 index 9a6a17b..0000000 --- a/hash/risc0/composition/src/main.rs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use composition_methods::{COMPOSITION_METHOD_ELF, COMPOSITION_METHOD_ID}; -use inner_proof::sha_bench; -use risc0_zkvm::{default_prover, ExecutorEnv}; -use risc0_zkvm::sha; -use std::time::Instant; -use std::process; - -fn main() { - - let args: Vec = std::env::args().collect(); - - if args.len() != 2 { - println!("Wrong number of arguments! The program expects one arguments: "); - // Exit the program with a non-zero exit code - process::exit(1); - } - - let data_size = args[1].parse::().unwrap(); - - let t0 = Instant::now(); - - let (hash_receipt, hash) = sha_bench(data_size.try_into().unwrap()); - let (hash_receipt2, hash2) = sha_bench(data_size.try_into().unwrap()); - - let env = ExecutorEnv::builder() - // add_assumption makes the receipt to be verified available to the prover. - .add_assumption(hash_receipt) - .write(&hash) - .unwrap() - .add_assumption(hash_receipt2) - .write(&hash2) - .unwrap() - .build() - .unwrap(); - - let t1 = t0.elapsed(); - - let receipt = default_prover().prove(env, COMPOSITION_METHOD_ELF).unwrap(); - - let t2 = t0.elapsed(); - - receipt.verify(COMPOSITION_METHOD_ID).unwrap(); - - let t3 = t0.elapsed(); - - let hash: sha::Digest = receipt.journal.decode().unwrap(); - eprintln!("hash: {:?}", hash); - eprintln!("ExecutorEnv Builder time: {:?}", t1); - eprintln!("Proof generation + receiving receipt time: {:?}", t2 - t1); - eprintln!("Verification time: {:?}", t3 - t2); -} diff --git a/hash/risc0/external/risc0 b/hash/risc0/external/risc0 deleted file mode 160000 index 02fad7a..0000000 --- a/hash/risc0/external/risc0 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 02fad7a498764d5c6cc851f246813b73b41c30b8 diff --git a/hash/risc0/inner_proof/Cargo.lock b/hash/risc0/inner_proof/Cargo.lock deleted file mode 100644 index 943cc8f..0000000 --- a/hash/risc0/inner_proof/Cargo.lock +++ /dev/null @@ -1,2778 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "addchain" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2e69442aa5628ea6951fa33e24efe8313f4321a91bd729fc2f75bdfc858570" -dependencies = [ - "num-bigint 0.3.3", - "num-integer", - "num-traits", -] - -[[package]] -name = "addr2line" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" -dependencies = [ - "cpp_demangle", - "fallible-iterator", - "gimli", - "memmap2", - "object", - "rustc-demangle", - "smallvec", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "ahash" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "aho-corasick" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" -dependencies = [ - "memchr", -] - -[[package]] -name = "anyhow" -version = "1.0.79" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" - -[[package]] -name = "approx" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" -dependencies = [ - "num-traits", -] - -[[package]] -name = "ark-bn254" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-crypto-primitives" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-snark", - "ark-std", - "blake2", - "derivative", - "digest", - "sha2", -] - -[[package]] -name = "ark-ec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" -dependencies = [ - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", - "itertools 0.10.5", - "num-traits", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", - "derivative", - "digest", - "itertools 0.10.5", - "num-bigint 0.4.4", - "num-traits", - "paste", - "rustc_version", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint 0.4.4", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-groth16" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" -dependencies = [ - "ark-crypto-primitives", - "ark-ec", - "ark-ff", - "ark-poly", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-poly" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown 0.13.2", -] - -[[package]] -name = "ark-relations" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" -dependencies = [ - "ark-ff", - "ark-std", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "ark-serialize" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" -dependencies = [ - "ark-serialize-derive", - "ark-std", - "digest", - "num-bigint 0.4.4", -] - -[[package]] -name = "ark-serialize-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-snark" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" -dependencies = [ - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-std" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "autotools" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aef8da1805e028a172334c3b680f93e71126f2327622faef2ec3d893c0a4ad77" -dependencies = [ - "cc", -] - -[[package]] -name = "backtrace" -version = "0.3.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "block" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "bonsai-sdk" -version = "0.6.0-rc.2" -dependencies = [ - "reqwest", - "serde", - "thiserror", -] - -[[package]] -name = "bumpalo" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" - -[[package]] -name = "bytemuck" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" -dependencies = [ - "serde", -] - -[[package]] -name = "camino" -version = "1.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "cc" -version = "1.0.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "jobserver", - "libc", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" - -[[package]] -name = "core-graphics-types" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "libc", -] - -[[package]] -name = "cpp_demangle" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8227005286ec39567949b33df9896bcadfa6051bccca2488129f108ca23119" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "cpufeatures" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" -dependencies = [ - "libc", -] - -[[package]] -name = "crc32fast" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "rand_core", - "subtle", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "cust" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6cc71911e179f12483b9734120b45bd00bf64fab085cc4818428523eedd469" -dependencies = [ - "bitflags 1.3.2", - "bytemuck", - "cust_core", - "cust_derive", - "cust_raw", - "find_cuda_helper", -] - -[[package]] -name = "cust_core" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "039f79662cb8f890cbf335e818cd522d6e3a53fe63f61d1aaaf859cd3d975f06" -dependencies = [ - "cust_derive", - "glam", - "mint", - "vek", -] - -[[package]] -name = "cust_derive" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3bc95fe629aed92b2423de6ccff9e40174b21d19cb6ee6281a4d04ac72f66" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "cust_raw" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf40d6ade12cb9828bbc844b9875c7b93d25e67a3c9bf61c7aa3ae09e402bf8" -dependencies = [ - "find_cuda_helper", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_more" -version = "0.99.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "directories" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - -[[package]] -name = "docker-generate" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf673e0848ef09fa4aeeba78e681cf651c0c7d35f76ee38cec8e55bc32fa111" - -[[package]] -name = "downcast-rs" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" - -[[package]] -name = "downloader" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05213e96f184578b5f70105d4d0a644a168e99e12d7bea0b200c15d67b5c182" -dependencies = [ - "digest", - "futures", - "rand", - "reqwest", - "thiserror", - "tokio", -] - -[[package]] -name = "either" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" - -[[package]] -name = "elf" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4445909572dbd556c457c849c4ca58623d84b27c8fff1e74b0b4227d8b90d17b" - -[[package]] -name = "encoding_rs" -version = "0.8.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "erased-serde" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55d05712b2d8d88102bc9868020c9e5c7a1f5527c452b9b97450a1d006140ba7" -dependencies = [ - "serde", -] - -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "fallible-iterator" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" - -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - -[[package]] -name = "ff" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" -dependencies = [ - "bitvec", - "byteorder", - "ff_derive", - "rand_core", - "subtle", -] - -[[package]] -name = "ff_derive" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9f54704be45ed286151c5e11531316eaef5b8f5af7d597b806fdb8af108d84a" -dependencies = [ - "addchain", - "cfg-if", - "num-bigint 0.3.3", - "num-integer", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "find_cuda_helper" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f9e65c593dd01ac77daad909ea4ad17f0d6d1776193fc8ea766356177abdad" -dependencies = [ - "glob", -] - -[[package]] -name = "fixedbitset" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" - -[[package]] -name = "flate2" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foreign-types" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" -dependencies = [ - "foreign-types-macros", - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-macros" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "foreign-types-shared" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "futures" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" - -[[package]] -name = "futures-executor" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" - -[[package]] -name = "futures-macro" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "futures-sink" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" - -[[package]] -name = "futures-task" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" - -[[package]] -name = "futures-util" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "gimli" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" -dependencies = [ - "fallible-iterator", - "stable_deref_trait", -] - -[[package]] -name = "glam" -version = "0.20.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43e957e744be03f5801a55472f593d43fabdebf25a4585db250f04d86b1675f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - -[[package]] -name = "h2" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" -dependencies = [ - "ahash", -] - -[[package]] -name = "hashbrown" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "hermit-abi" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "http" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "human-repr" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" - -[[package]] -name = "hyper" -version = "0.14.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http", - "hyper", - "rustls", - "tokio", - "tokio-rustls", -] - -[[package]] -name = "idna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "indexmap" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" -dependencies = [ - "equivalent", - "hashbrown 0.14.3", -] - -[[package]] -name = "inner_proof" -version = "0.1.0" -dependencies = [ - "inner_proof-methods", - "rand", - "risc0-zkvm", - "serde", -] - -[[package]] -name = "inner_proof-methods" -version = "0.1.0" -dependencies = [ - "risc0-build", -] - -[[package]] -name = "inventory" -version = "0.3.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8573b2b1fb643a372c73b23f4da5f888677feef3305146d68a539250a9bccc7" - -[[package]] -name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "jobserver" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" -dependencies = [ - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.67" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "lazy-regex" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d12be4595afdf58bd19e4a9f4e24187da2a66700786ff660a418e9059937a4c" -dependencies = [ - "lazy-regex-proc_macros", - "once_cell", - "regex", -] - -[[package]] -name = "lazy-regex-proc_macros" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44bcd58e6c97a7fcbaffcdc95728b393b8d98933bfadad49ed4097845b57ef0b" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.48", -] - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "libc" -version = "0.2.152" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" - -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - -[[package]] -name = "libredox" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" -dependencies = [ - "bitflags 2.4.2", - "libc", - "redox_syscall", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - -[[package]] -name = "log" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" - -[[package]] -name = "malloc_buf" -version = "0.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" -dependencies = [ - "libc", -] - -[[package]] -name = "matrixmultiply" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2" -dependencies = [ - "autocfg", - "rawpointer", -] - -[[package]] -name = "memchr" -version = "2.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" - -[[package]] -name = "memmap2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" -dependencies = [ - "libc", -] - -[[package]] -name = "metal" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "550b24b0cd4cf923f36bae78eca457b3a10d8a6a14a9c84cb2687b527e6a84af" -dependencies = [ - "bitflags 1.3.2", - "block", - "core-graphics-types", - "foreign-types", - "log", - "objc", - "paste", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "miniz_oxide" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" -dependencies = [ - "adler", -] - -[[package]] -name = "mint" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e53debba6bda7a793e5f99b8dacf19e626084f525f7829104ba9898f367d85ff" - -[[package]] -name = "mio" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" -dependencies = [ - "libc", - "wasi", - "windows-sys 0.48.0", -] - -[[package]] -name = "multimap" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" - -[[package]] -name = "ndarray" -version = "0.15.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32" -dependencies = [ - "matrixmultiply", - "num-complex", - "num-integer", - "num-traits", - "rawpointer", - "rayon", -] - -[[package]] -name = "num-bigint" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6f7833f2cbf2360a6cfd58cd41a53aa7a90bd4c202f5b1c7dd2ed73c57b2c3" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-complex" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-derive" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", -] - -[[package]] -name = "objc" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" -dependencies = [ - "malloc_buf", - "objc_exception", -] - -[[package]] -name = "objc_exception" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" -dependencies = [ - "cc", -] - -[[package]] -name = "object" -version = "0.32.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" -dependencies = [ - "flate2", - "memchr", - "ruzstd", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - -[[package]] -name = "paste" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "petgraph" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" -dependencies = [ - "fixedbitset", - "indexmap", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "prettyplease" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" -dependencies = [ - "proc-macro2", - "syn 2.0.48", -] - -[[package]] -name = "proc-macro2" -version = "1.0.76" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "prost" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a" -dependencies = [ - "bytes", - "prost-derive", -] - -[[package]] -name = "prost-build" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2" -dependencies = [ - "bytes", - "heck", - "itertools 0.11.0", - "log", - "multimap", - "once_cell", - "petgraph", - "prettyplease", - "prost", - "prost-types", - "regex", - "syn 2.0.48", - "tempfile", - "which", -] - -[[package]] -name = "prost-derive" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e" -dependencies = [ - "anyhow", - "itertools 0.11.0", - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "prost-types" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e" -dependencies = [ - "prost", -] - -[[package]] -name = "protobuf-src" -version = "1.1.0+21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7ac8852baeb3cc6fb83b93646fb93c0ffe5d14bf138c945ceb4b9948ee0e3c1" -dependencies = [ - "autotools", -] - -[[package]] -name = "quote" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rawpointer" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" - -[[package]] -name = "rayon" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "redox_syscall" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" -dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "redox_users" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" -dependencies = [ - "getrandom", - "libredox", - "thiserror", -] - -[[package]] -name = "regex" -version = "1.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" - -[[package]] -name = "reqwest" -version = "0.11.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41" -dependencies = [ - "base64", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-rustls", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls", - "rustls-pemfile", - "serde", - "serde_json", - "serde_urlencoded", - "system-configuration", - "tokio", - "tokio-rustls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots", - "winreg", -] - -[[package]] -name = "ring" -version = "0.17.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" -dependencies = [ - "cc", - "getrandom", - "libc", - "spin", - "untrusted", - "windows-sys 0.48.0", -] - -[[package]] -name = "risc0-binfmt" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "elf", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "tracing", -] - -[[package]] -name = "risc0-build" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "cargo_metadata", - "docker-generate", - "risc0-binfmt", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "serde_json", - "tempfile", -] - -[[package]] -name = "risc0-build-kernel" -version = "0.20.0-rc.2" -dependencies = [ - "cc", - "directories", - "hex", - "sha2", - "tempfile", -] - -[[package]] -name = "risc0-circuit-recursion" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "bytemuck", - "cust", - "downloader", - "metal", - "rand", - "rayon", - "risc0-circuit-recursion-sys", - "risc0-core", - "risc0-zkp", - "sha2", - "tracing", - "zip", -] - -[[package]] -name = "risc0-circuit-recursion-sys" -version = "0.20.0-rc.2" -dependencies = [ - "glob", - "risc0-build-kernel", - "risc0-core", -] - -[[package]] -name = "risc0-circuit-rv32im" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "cust", - "metal", - "rand", - "rayon", - "risc0-circuit-rv32im-sys", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "tracing", -] - -[[package]] -name = "risc0-circuit-rv32im-sys" -version = "0.20.0-rc.2" -dependencies = [ - "glob", - "risc0-build-kernel", - "risc0-core", -] - -[[package]] -name = "risc0-core" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "rand_core", -] - -[[package]] -name = "risc0-sppark" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be1d1ff7fe501c9f420654bc1ff7461909b85e7f8fb3698a8812c0a8a787306" -dependencies = [ - "cc", - "which", -] - -[[package]] -name = "risc0-sys" -version = "0.20.0-rc.2" -dependencies = [ - "cc", - "cust", - "risc0-build-kernel", - "risc0-sppark", -] - -[[package]] -name = "risc0-zkp" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "blake2", - "bytemuck", - "cust", - "digest", - "ff", - "hex", - "lazy_static", - "metal", - "ndarray", - "paste", - "rand", - "rand_core", - "rayon", - "risc0-core", - "risc0-sys", - "risc0-zkvm-platform", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm" -version = "0.20.0-rc.2" -dependencies = [ - "addr2line", - "anyhow", - "ark-bn254", - "ark-groth16", - "ark-serialize", - "bincode", - "bonsai-sdk", - "bytemuck", - "bytes", - "cfg-if", - "crypto-bigint", - "elf", - "getrandom", - "hex", - "human-repr", - "lazy-regex", - "num-bigint 0.4.4", - "num-derive", - "num-traits", - "prost", - "prost-build", - "protobuf-src", - "rayon", - "risc0-binfmt", - "risc0-circuit-recursion", - "risc0-circuit-rv32im", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "rrs-lib", - "rustc-demangle", - "semver", - "serde", - "sha2", - "tempfile", - "tracing", - "typetag", -] - -[[package]] -name = "risc0-zkvm-platform" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "getrandom", - "libm", -] - -[[package]] -name = "rrs-lib" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4382d3af3a4ebdae7f64ba6edd9114fff92c89808004c4943b393377a25d001" -dependencies = [ - "downcast-rs", - "paste", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls" -version = "0.21.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" -dependencies = [ - "log", - "ring", - "rustls-webpki", - "sct", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64", -] - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "ruzstd" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c4eb8a81997cf040a091d1f7e1938aeab6749d3a0dfa73af43cdc32393483d" -dependencies = [ - "byteorder", - "derive_more", - "twox-hash", -] - -[[package]] -name = "ryu" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "semver" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" -dependencies = [ - "serde", -] - -[[package]] -name = "serde" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "serde_json" -version = "1.0.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b187f0231d56fe41bfb12034819dd2bf336422a5866de41bc3fec4b2e3883e8" - -[[package]] -name = "socket2" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" -dependencies = [ - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" - -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "subtle" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.48" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - -[[package]] -name = "thiserror" -version = "1.0.56" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.56" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "tinyvec" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.35.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio", - "num_cpus", - "pin-project-lite", - "socket2", - "windows-sys 0.48.0", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls", - "tokio", -] - -[[package]] -name = "tokio-util" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", - "tracing", -] - -[[package]] -name = "tower-service" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" - -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-subscriber" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" -dependencies = [ - "tracing-core", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "twox-hash" -version = "1.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" -dependencies = [ - "cfg-if", - "static_assertions", -] - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "typetag" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43148481c7b66502c48f35b8eef38b6ccdc7a9f04bd4cc294226d901ccc9bc7" -dependencies = [ - "erased-serde", - "inventory", - "once_cell", - "serde", - "typetag-impl", -] - -[[package]] -name = "typetag-impl" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291db8a81af4840c10d636e047cac67664e343be44e24dfdbd1492df9a5d3390" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" - -[[package]] -name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" - -[[package]] -name = "unicode-normalization" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" -dependencies = [ - "form_urlencoded", - "idna", - "percent-encoding", -] - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "vek" -version = "0.15.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8085882662f9bc47fc8b0cdafa5e19df8f592f650c02b9083da8d45ac9eebd17" -dependencies = [ - "approx", - "num-integer", - "num-traits", - "rustc_version", -] - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasm-bindgen" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" -dependencies = [ - "cfg-if", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" -dependencies = [ - "bumpalo", - "log", - "once_cell", - "proc-macro2", - "quote", - "syn 2.0.48", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" -dependencies = [ - "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.90" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" - -[[package]] -name = "web-sys" -version = "0.3.67" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "0.25.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10" - -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "zerocopy" -version = "0.7.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "zeroize" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "byteorder", - "crc32fast", - "crossbeam-utils", - "flate2", -] diff --git a/hash/risc0/inner_proof/Cargo.toml b/hash/risc0/inner_proof/Cargo.toml deleted file mode 100644 index c935ed6..0000000 --- a/hash/risc0/inner_proof/Cargo.toml +++ /dev/null @@ -1,17 +0,0 @@ -[package] -name = "inner_proof" -version = "0.1.0" -edition = "2021" - -[dependencies] -inner_proof-methods = { path = "methods" } -risc0-zkvm = { path = "../external/risc0/risc0/zkvm" } -serde = "1.0" -rand = "0.8.3" - - -[features] -cuda = ["risc0-zkvm/cuda"] -default = [] -metal = ["risc0-zkvm/metal"] -prove = ["risc0-zkvm/prove"] diff --git a/hash/risc0/inner_proof/methods/Cargo.toml b/hash/risc0/inner_proof/methods/Cargo.toml deleted file mode 100644 index b187021..0000000 --- a/hash/risc0/inner_proof/methods/Cargo.toml +++ /dev/null @@ -1,10 +0,0 @@ -[package] -name = "inner_proof-methods" -version = "0.1.0" -edition = "2021" - -[build-dependencies] -risc0-build = { path = "../../external/risc0/risc0/build" } - -[package.metadata.risc0] -methods = ["guest"] diff --git a/hash/risc0/inner_proof/methods/build.rs b/hash/risc0/inner_proof/methods/build.rs deleted file mode 100644 index 08a8a4e..0000000 --- a/hash/risc0/inner_proof/methods/build.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - risc0_build::embed_methods(); -} diff --git a/hash/risc0/inner_proof/methods/guest/Cargo.lock b/hash/risc0/inner_proof/methods/guest/Cargo.lock deleted file mode 100644 index da9ea78..0000000 --- a/hash/risc0/inner_proof/methods/guest/Cargo.lock +++ /dev/null @@ -1,791 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "ahash" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "anyhow" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" - -[[package]] -name = "ark-bn254" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-crypto-primitives" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-snark", - "ark-std", - "blake2", - "derivative", - "digest", - "sha2", -] - -[[package]] -name = "ark-ec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" -dependencies = [ - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown", - "itertools", - "num-traits", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm", - "ark-ff-macros", - "ark-serialize", - "ark-std", - "derivative", - "digest", - "itertools", - "num-bigint", - "num-traits", - "paste", - "rustc_version", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-groth16" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" -dependencies = [ - "ark-crypto-primitives", - "ark-ec", - "ark-ff", - "ark-poly", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-poly" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", - "hashbrown", -] - -[[package]] -name = "ark-relations" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" -dependencies = [ - "ark-ff", - "ark-std", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "ark-serialize" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" -dependencies = [ - "ark-serialize-derive", - "ark-std", - "digest", - "num-bigint", -] - -[[package]] -name = "ark-serialize-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "ark-snark" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" -dependencies = [ - "ark-ff", - "ark-relations", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-std" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "block-buffer" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" -dependencies = [ - "generic-array", -] - -[[package]] -name = "bytemuck" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aca418a974d83d40a0c1f0c5cba6ff4bc28d8df099109ca459a2118d40b6322" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "const-oid" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "795bc6e66a8e340f075fcf6227e417a2dc976b92b91f3cdc778bb858778b6747" - -[[package]] -name = "cpufeatures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" -dependencies = [ - "libc", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "digest" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" -dependencies = [ - "block-buffer", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "downcast-rs" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" - -[[package]] -name = "either" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" - -[[package]] -name = "elf" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b183d6ce6ca4cf30e3db37abf5b52568b5f9015c97d9fbdd7026aa5dcdd758" - -[[package]] -name = "generic-array" -version = "0.14.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" -dependencies = [ - "ahash", -] - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "human-repr" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" - -[[package]] -name = "inner_proof_method" -version = "0.1.0" -dependencies = [ - "risc0-zkvm", -] - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "libc" -version = "0.2.149" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" - -[[package]] -name = "libm" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" - -[[package]] -name = "log" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" - -[[package]] -name = "num-bigint" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-derive" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" -dependencies = [ - "autocfg", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "paste" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba" - -[[package]] -name = "pin-project-lite" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" - -[[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "proc-macro2" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" - -[[package]] -name = "risc0-binfmt" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "elf", - "risc0-zkp", - "risc0-zkvm-platform", - "serde", - "tracing", -] - -[[package]] -name = "risc0-circuit-recursion" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "bytemuck", - "risc0-core", - "risc0-zkp", - "tracing", -] - -[[package]] -name = "risc0-circuit-rv32im" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "tracing", -] - -[[package]] -name = "risc0-core" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "rand_core", -] - -[[package]] -name = "risc0-zkp" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "blake2", - "bytemuck", - "digest", - "hex", - "paste", - "rand_core", - "risc0-core", - "risc0-zkvm-platform", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm" -version = "0.20.0-rc.2" -dependencies = [ - "anyhow", - "ark-bn254", - "ark-groth16", - "ark-serialize", - "bytemuck", - "cfg-if", - "getrandom", - "hex", - "human-repr", - "num-bigint", - "num-derive", - "num-traits", - "risc0-binfmt", - "risc0-circuit-recursion", - "risc0-circuit-rv32im", - "risc0-core", - "risc0-zkp", - "risc0-zkvm-platform", - "rrs-lib", - "semver", - "serde", - "sha2", - "tracing", -] - -[[package]] -name = "risc0-zkvm-platform" -version = "0.20.0-rc.2" -dependencies = [ - "bytemuck", - "getrandom", - "libm", -] - -[[package]] -name = "rrs-lib" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4382d3af3a4ebdae7f64ba6edd9114fff92c89808004c4943b393377a25d001" -dependencies = [ - "downcast-rs", - "paste", -] - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - -[[package]] -name = "semver" -version = "1.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" - -[[package]] -name = "serde" -version = "1.0.171" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.171" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "sha2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "subtle" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" - -[[package]] -name = "syn" -version = "1.0.107" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "tracing" -version = "0.1.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" -dependencies = [ - "cfg-if", - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", -] - -[[package]] -name = "tracing-core" -version = "0.1.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-subscriber" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" -dependencies = [ - "tracing-core", -] - -[[package]] -name = "typenum" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" - -[[package]] -name = "unicode-ident" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "zerocopy" -version = "0.7.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] - -[[package]] -name = "zeroize" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.39", -] diff --git a/hash/risc0/inner_proof/methods/guest/Cargo.toml b/hash/risc0/inner_proof/methods/guest/Cargo.toml deleted file mode 100644 index faac96e..0000000 --- a/hash/risc0/inner_proof/methods/guest/Cargo.toml +++ /dev/null @@ -1,9 +0,0 @@ -[package] -name = "inner_proof_method" -version = "0.1.0" -edition = "2021" - -[workspace] - -[dependencies] -risc0-zkvm = { path = "../../../external/risc0/risc0/zkvm", default-features = false, features = ["std"]} diff --git a/hash/risc0/inner_proof/methods/guest/src/main.rs b/hash/risc0/inner_proof/methods/guest/src/main.rs deleted file mode 100644 index 28fc0ac..0000000 --- a/hash/risc0/inner_proof/methods/guest/src/main.rs +++ /dev/null @@ -1,13 +0,0 @@ -#![no_main] - -use risc0_zkvm::{guest::env, sha, sha::Sha256}; - -risc0_zkvm::guest::entry!(main); - -fn main() { - let data: String = env::read(); - let hash = sha::Impl::hash_bytes(&data.as_bytes()); - env::commit(&hash) -} - - diff --git a/hash/risc0/inner_proof/methods/src/lib.rs b/hash/risc0/inner_proof/methods/src/lib.rs deleted file mode 100644 index 1bdb308..0000000 --- a/hash/risc0/inner_proof/methods/src/lib.rs +++ /dev/null @@ -1 +0,0 @@ -include!(concat!(env!("OUT_DIR"), "/methods.rs")); diff --git a/hash/risc0/inner_proof/src/lib.rs b/hash/risc0/inner_proof/src/lib.rs deleted file mode 100644 index 6c6ab88..0000000 --- a/hash/risc0/inner_proof/src/lib.rs +++ /dev/null @@ -1,42 +0,0 @@ -use inner_proof_methods::INNER_PROOF_METHOD_ELF; -use risc0_zkvm::{default_prover, ExecutorEnv, Receipt}; -use risc0_zkvm::{ sha}; -use rand::Rng; - - -pub fn generate_bytes(size: u32) -> String { - let mut rng = rand::thread_rng(); - let random_bytes: Vec = (0..(size/2)).map(|_| rng.gen()).collect(); - - let random_string: String = random_bytes - .iter() - .map(|byte| format!("{:02X}", byte)) // Convert each byte to a two-digit hexadecimal string - .collect(); - - // eprintln!("bytes: {:?}", random_string.as_bytes().len()); - random_string - -} - -pub fn sha_bench(size: u32) -> (Receipt, sha::Digest) { - - let input = generate_bytes(size); - - let env = ExecutorEnv::builder() - .write(&input) - .unwrap() - .build() - .unwrap(); - - // Obtain the default prover. - let prover = default_prover(); - - // Produce a receipt by proving the specified ELF binary. - let receipt = prover.prove(env, INNER_PROOF_METHOD_ELF).unwrap(); - - let _output: sha::Digest = receipt.journal.decode().expect( - "cannot deserialise", - ); - - (receipt, _output) -} \ No newline at end of file diff --git a/hash/risc0/inner_proof/src/main.rs b/hash/risc0/inner_proof/src/main.rs deleted file mode 100644 index 0bb1c0d..0000000 --- a/hash/risc0/inner_proof/src/main.rs +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -use inner_proof::sha_bench; -use inner_proof_methods::INNER_PROOF_METHOD_ID; -use std::process; - -fn main() { - - let args: Vec = std::env::args().collect(); - - if args.len() != 2 { - println!("Wrong number of arguments! The program expects two arguments: and "); - // Exit the program with a non-zero exit code - process::exit(1); - } - - let data_size = args[1].parse::().unwrap(); - - let (receipt, _output) = sha_bench(data_size.try_into().unwrap()); - - // Verify receipt, panic if it's wrong - receipt.verify(INNER_PROOF_METHOD_ID).expect( - "cannot verify", - ); - - eprintln!("hash: {:?}", _output); -}