miden_node_proto/generated/
block.rs

1// This file is @generated by prost-build.
2/// Represents a block header.
3#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4pub struct BlockHeader {
5    /// Specifies the version of the protocol.
6    #[prost(uint32, tag = "1")]
7    pub version: u32,
8    /// The hash of the previous blocks header.
9    #[prost(message, optional, tag = "2")]
10    pub prev_hash: ::core::option::Option<super::digest::Digest>,
11    /// A unique sequential number of the current block.
12    #[prost(fixed32, tag = "3")]
13    pub block_num: u32,
14    /// A commitment to an MMR of the entire chain where each block is a leaf.
15    #[prost(message, optional, tag = "4")]
16    pub chain_root: ::core::option::Option<super::digest::Digest>,
17    /// A commitment to account database.
18    #[prost(message, optional, tag = "5")]
19    pub account_root: ::core::option::Option<super::digest::Digest>,
20    /// A commitment to the nullifier database.
21    #[prost(message, optional, tag = "6")]
22    pub nullifier_root: ::core::option::Option<super::digest::Digest>,
23    /// A commitment to all notes created in the current block.
24    #[prost(message, optional, tag = "7")]
25    pub note_root: ::core::option::Option<super::digest::Digest>,
26    /// A commitment to a set of IDs of transactions which affected accounts in this block.
27    #[prost(message, optional, tag = "8")]
28    pub tx_hash: ::core::option::Option<super::digest::Digest>,
29    /// A hash of a STARK proof attesting to the correct state transition.
30    #[prost(message, optional, tag = "9")]
31    pub proof_hash: ::core::option::Option<super::digest::Digest>,
32    /// A commitment to all transaction kernels supported by this block.
33    #[prost(message, optional, tag = "10")]
34    pub kernel_root: ::core::option::Option<super::digest::Digest>,
35    /// The time when the block was created.
36    #[prost(fixed32, tag = "11")]
37    pub timestamp: u32,
38}
39/// Represents a block inclusion proof.
40#[derive(Clone, PartialEq, ::prost::Message)]
41pub struct BlockInclusionProof {
42    /// Block header associated with the inclusion proof.
43    #[prost(message, optional, tag = "1")]
44    pub block_header: ::core::option::Option<BlockHeader>,
45    /// Merkle path associated with the inclusion proof.
46    #[prost(message, optional, tag = "2")]
47    pub mmr_path: ::core::option::Option<super::merkle::MerklePath>,
48    /// The chain length associated with `mmr_path`.
49    #[prost(fixed32, tag = "3")]
50    pub chain_length: u32,
51}