#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub struct RingSigParams {
pub tau: usize,
pub z_inf_bound: i32,
pub max_prove_attempts: usize,
}
impl RingSigParams {
#[must_use]
pub fn mldsa65_pilot() -> Self {
Self {
tau: 39,
z_inf_bound: 20_000_000,
max_prove_attempts: 512,
}
}
#[must_use]
pub fn nist_security_category_1() -> Self {
Self {
tau: 39,
z_inf_bound: 20_000_000,
max_prove_attempts: 512,
}
}
#[must_use]
pub fn nist_security_category_3() -> Self {
Self {
tau: 49,
z_inf_bound: 30_000_000,
max_prove_attempts: 768,
}
}
#[must_use]
pub fn nist_security_category_5() -> Self {
Self {
tau: 60,
z_inf_bound: 40_000_000,
max_prove_attempts: 1024,
}
}
}