diff --git a/lee/state_machine/core/src/circuit_io.rs b/lee/state_machine/core/src/circuit_io.rs index 8db29342..1c74b227 100644 --- a/lee/state_machine/core/src/circuit_io.rs +++ b/lee/state_machine/core/src/circuit_io.rs @@ -93,6 +93,20 @@ pub enum InputAccountIdentity { }, } +/// A struct containing necessary data for dummy nullifier and +/// commitment generation. +#[derive(Serialize, Deserialize)] +pub struct DummyInput { + /// The seed used for generating the dummy nullifier. + pub nullifier_seed: [u8; 32], + /// The seed used for generating the dummy commitment. + pub commitment_seed: [u8; 32], + /// The dummy ciphertext, epk, and view tag. + pub note: EncryptedAccountData, + /// The dummy root. + pub commitment_root: CommitmentSetDigest, +} + impl InputAccountIdentity { #[must_use] pub const fn is_public(&self) -> bool { diff --git a/lee/state_machine/core/src/lib.rs b/lee/state_machine/core/src/lib.rs index 4bcb23a4..62dbd3cc 100644 --- a/lee/state_machine/core/src/lib.rs +++ b/lee/state_machine/core/src/lib.rs @@ -4,7 +4,7 @@ )] pub use circuit_io::{ - InputAccountIdentity, PrivacyPreservingCircuitInput, PrivacyPreservingCircuitOutput, + DummyInput, InputAccountIdentity, PrivacyPreservingCircuitInput, PrivacyPreservingCircuitOutput, }; pub use commitment::{ Commitment, CommitmentSetDigest, DUMMY_COMMITMENT, DUMMY_COMMITMENT_HASH, MembershipProof,