//! Central bigint-backend selection. Every bignum carrier krabitls
//! instantiates is named here, by role — swapping the backend (or a width /
//! personality policy) starts and mostly ends in this file.
//!
//! A replacement backend must satisfy the trait surfaces the aliases feed:
//! `ed25519_heapless`'s verify/sign generics for the curve types, and
//! `rsa_heapless::modmath_support::ModMathInt` (`Nct`) / the CT signing
//! bounds for the RSA types. `const_num_traits::{Nct, Ct}` select between
//! vartime and constant-time arithmetic per alias.
/// 512-bit vartime carrier for Ed25519 *verification* — public data, so the
/// faster non-CT personality.
pub type Curve25519VerifyBn = FixedUInt;
/// 512-bit constant-time carrier for the X25519 shared-secret computation
/// and Ed25519 *signing* — the scalar is secret, so `ed25519_heapless`'s
/// sign/DH bounds require CT field arithmetic.
pub type Curve25519CtBn = FixedUInt;
/// 1024-bit vartime carrier for RSA-1024 *verification*. Compiled out under
/// `feature = "rsa_2048_only"`.
pub type RsaU1024 = FixedUInt;
/// 2048-bit vartime carrier for RSA-2048 *verification* — the modexp
/// exponent is the public `e`.
pub type RsaU2048 = FixedUInt;
/// 2048-bit constant-time carrier for RSA-2048 *signing* — the modexp
/// exponent is the private `d`.
pub type RsaSignBn = FixedUInt;