Struct smartnoise_validator::proto::PrivacyDefinition[][src]

pub struct PrivacyDefinition {
    pub group_size: u32,
    pub neighboring: i32,
    pub strict_parameter_checks: bool,
    pub protect_overflow: bool,
    pub protect_elapsed_time: bool,
    pub protect_memory_utilization: bool,
    pub protect_floating_point: bool,
    pub protect_sensitivity: bool,
}

The definition of privacy determines parameters for sensitivity derivations and the set of available algorithms.

Fields

group_size: u32

Privacy leakage with respect group_size number of rows. This is typically one.

neighboring: i32

Define the kind of perturbation that may be applied to a dataset to create a neighboring dataset.

strict_parameter_checks: bool

enable to reject the use of algorithms using delta when n is not known enable to reject the use of algorithms when some soft violations of assumptions are observed

protect_overflow: bool

enable for tighter bounds checking to prevent leaks via overflow/underflow

protect_elapsed_time: bool

enable if side-channel elapsed execution time is considered part of the release

protect_memory_utilization: bool

enable if side-channel memory usage is considered part of the release

protect_floating_point: bool

enable to block mechanisms known to be vulnerable to floating point attacks

protect_sensitivity: bool

enable to prevent manual insertion of sensitivity to mechanisms

Implementations

impl PrivacyDefinition[src]

pub fn neighboring(&self) -> Neighboring[src]

Returns the enum value of neighboring, or the default if the field is set to an invalid enum value.

pub fn set_neighboring(&mut self, value: Neighboring)[src]

Sets neighboring to the provided enum value.

Trait Implementations

impl Clone for PrivacyDefinition[src]

impl Debug for PrivacyDefinition[src]

impl Default for PrivacyDefinition[src]

impl Message for PrivacyDefinition[src]

impl PartialEq<PrivacyDefinition> for PrivacyDefinition[src]

impl StructuralPartialEq for PrivacyDefinition[src]

Auto Trait Implementations

impl RefUnwindSafe for PrivacyDefinition

impl Send for PrivacyDefinition

impl Sync for PrivacyDefinition

impl Unpin for PrivacyDefinition

impl UnwindSafe for PrivacyDefinition

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]