Skip to main content

HidingCodeSecurityReport

Struct HidingCodeSecurityReport 

Source
#[non_exhaustive]
pub struct HidingCodeSecurityReport {
Show 15 fields pub role: HidingCodeRole, pub message_len: usize, pub randomness_len: usize, pub randomized_dimension: usize, pub dyadic_dimension: usize, pub domain_size: usize, pub randomized_rate: f64, pub analysis_log_inv_rate: Option<usize>, pub analysis_radius: Option<f64>, pub width: usize, pub requested_queries: usize, pub effective_queries: usize, pub query_miss: HidingErrorBound, pub mca: HidingErrorBound, pub paired_list: HidingListBound,
}
Expand description

Geometry and ideal-IOP bounds for one randomized code component.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§role: HidingCodeRole

The component’s protocol role.

§message_len: usize

Number of message coefficients in one lane.

§randomness_len: usize

Number of randomizing coefficients in one lane.

§randomized_dimension: usize

Actual randomized-code dimension, message_len + randomness_len.

§dyadic_dimension: usize

Next-power-of-two envelope used for conservative RS bounds.

§domain_size: usize

Codeword length.

§randomized_rate: f64

Exact randomized-code rate, (message_len + randomness_len) / domain_size.

§analysis_log_inv_rate: Option<usize>

Logarithm of the conservative dyadic-envelope inverse rate.

This is unavailable when the dyadic envelope fills the domain: none of the configured proximity regimes supplies a positive radius then.

§analysis_radius: Option<f64>

Proximity radius selected at the dyadic-envelope rate.

§width: usize

Number of lanes sharing one row-query schedule.

§requested_queries: usize

Number of row queries requested by the derived configuration.

§effective_queries: usize

Number of distinct rows the sampler actually opens.

The sampler saturates at the codeword length.

§query_miss: HidingErrorBound

Conservative query-miss error before the shared final PoW.

At saturation this keeps the IID expression instead of reporting the exact zero miss probability. The sampling bound is proven under the premise that the pre-query component is at least analysis_radius from its code. Under CapacityBound, the separate list/MCA terms remain conditional; this field does not promote the full regime to proven.

§mca: HidingErrorBound

MCA error for this component. Interleaved groups include the conservative factor equal to width.

§paired_list: HidingListBound

Candidate-list bound for the old/fresh pair. Its interleaving is two for the source and 2 * width for a mask group.

Trait Implementations§

Source§

impl Clone for HidingCodeSecurityReport

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for HidingCodeSecurityReport

Source§

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

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

impl PartialEq for HidingCodeSecurityReport

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for HidingCodeSecurityReport

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for HidingCodeSecurityReport

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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 = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more