miden_lib/
auth.rs

1use miden_objects::crypto::dsa::rpo_falcon512;
2
3/// Defines authentication schemes available to standard and faucet accounts.
4pub enum AuthScheme {
5    /// A single-key authentication scheme which relies RPO Falcon512 signatures. RPO Falcon512 is
6    /// a variant of the [Falcon](https://falcon-sign.info/) signature scheme. This variant differs from
7    /// the standard in that instead of using SHAKE256 hash function in the hash-to-point algorithm
8    /// we use RPO256. This makes the signature more efficient to verify in Miden VM.
9    RpoFalcon512 { pub_key: rpo_falcon512::PublicKey },
10    /// A minimal authentication scheme that provides no cryptographic authentication.
11    /// It only increments the nonce if the account state has actually changed during
12    /// transaction execution, avoiding unnecessary nonce increments for transactions
13    /// that don't modify the account state.
14    NoAuth,
15}