Skip to main content

rhdl_ubft/crypto/
mod.rs

1//! Signature schemes for the slow path, one module each, all behind the
2//! same ports ([`crate::ports::CryptoIn`] / [`crate::ports::CryptoOut`]).
3//!
4//! | Scheme | Module | Feature | Owner |
5//! |---|---|---|---|
6//! | Ed25519 | [`ed25519`] | `ed25519` (default) | this crate |
7//! | DSig | `dsig` | `dsig` | DSig |
8//! | Outside the replica (card tops) | [`external`] | always | this crate |
9//! | Model (tests only, **not secure**) | [`model`] | `sim` | this crate |
10//!
11//! A build picks one with `RHDL_UBFT_SCHEME` ([`crate::Scheme`]); both may be
12//! compiled in.
13
14#[cfg(feature = "ed25519")]
15pub mod ed25519;
16// DSig's scheme (feature `dsig`), written by DSig.
17#[cfg(feature = "dsig")]
18pub mod dsig;
19pub mod external;
20#[cfg(feature = "sim")]
21pub mod model;