VerificationConfig

Struct VerificationConfig 

Source
pub struct VerificationConfig {
    pub sample_count: usize,
    pub max_variation_ratio: f64,
    pub confidence_threshold: f64,
}
Expand description

Configuration for constant-time verification testing.

This struct controls the parameters used for statistical analysis of timing behavior. The configuration balances thoroughness with performance and helps tune the verification process for different use cases.

§Performance vs Accuracy Trade-offs

  • Higher sample_count: More accurate results but slower testing
  • Lower max_variation_ratio: Stricter timing requirements but more false positives
  • Higher confidence_threshold: More conservative assessment but fewer false negatives
  • Development: sample_count=1000, max_variation_ratio=0.1, confidence_threshold=0.9
  • CI/CD: sample_count=100, max_variation_ratio=0.15, confidence_threshold=0.8
  • Quick checks: sample_count=10, max_variation_ratio=0.2, confidence_threshold=0.7

Fields§

§sample_count: usize

Number of timing samples to collect for statistical analysis More samples provide better statistical confidence but take longer Typical values: 100-1000 for meaningful results

§max_variation_ratio: f64

Maximum allowed timing variation as a fraction of mean execution time Values like 0.1 (10%) are typical for cryptographic applications Lower values are stricter but may flag benign system noise

§confidence_threshold: f64

Minimum confidence threshold for accepting constant-time results Higher values require stronger statistical evidence Typical values: 0.8-0.95 depending on security requirements

Trait Implementations§

Source§

impl Clone for VerificationConfig

Source§

fn clone(&self) -> VerificationConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for VerificationConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for VerificationConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.