pub struct BooleanKeySwitchingParameters {
pub ks_base_log: DecompositionBaseLog,
pub ks_level: DecompositionLevelCount,
}Expand description
A set of cryptographic parameters for homomorphic Boolean key switching.
Fields§
§ks_base_log: DecompositionBaseLog§ks_level: DecompositionLevelCountImplementations§
Source§impl BooleanKeySwitchingParameters
impl BooleanKeySwitchingParameters
Sourcepub fn new(
ks_base_log: DecompositionBaseLog,
ks_level: DecompositionLevelCount,
) -> Self
pub fn new( ks_base_log: DecompositionBaseLog, ks_level: DecompositionLevelCount, ) -> Self
Constructs a new set of parameters for boolean circuit evaluation.
§Warning
Failing to fix the parameters properly would yield incorrect and insecure computation. Unless you are a cryptographer who really knows the impact of each of those parameters, you must stick with the provided parameters (if any), which both offer correct results with 128 bits of security.
Trait Implementations§
Source§impl Clone for BooleanKeySwitchingParameters
impl Clone for BooleanKeySwitchingParameters
Source§fn clone(&self) -> BooleanKeySwitchingParameters
fn clone(&self) -> BooleanKeySwitchingParameters
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for BooleanKeySwitchingParameters
Source§impl<'de> Deserialize<'de> for BooleanKeySwitchingParameters
impl<'de> Deserialize<'de> for BooleanKeySwitchingParameters
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for BooleanKeySwitchingParameters
impl StructuralPartialEq for BooleanKeySwitchingParameters
Source§impl Unversionize for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl Unversionize for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
Source§fn unversionize(
versioned: Self::VersionedOwned,
) -> Result<Self, UnversionizeError>
fn unversionize( versioned: Self::VersionedOwned, ) -> Result<Self, UnversionizeError>
Creates an object from a versioned enum, and eventually upgrades from previous
variants.
Source§impl UnversionizeVec for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl UnversionizeVec for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
fn unversionize_vec( versioned: Self::VersionedVec, ) -> Result<Vec<Self>, UnversionizeError>
Source§impl Versionize for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl Versionize for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
Source§type Versioned<'vers> = <BooleanKeySwitchingParametersVersions as VersionsDispatch<BooleanKeySwitchingParameters>>::Ref<'vers>
type Versioned<'vers> = <BooleanKeySwitchingParametersVersions as VersionsDispatch<BooleanKeySwitchingParameters>>::Ref<'vers>
The equivalent versioned type. It should have a variant for each version.
It may own the underlying data or only hold a read-only reference to it.
Source§fn versionize(&self) -> Self::Versioned<'_>
fn versionize(&self) -> Self::Versioned<'_>
Wraps the object into a versioned enum with a variant for each version. This will
use references on the underlying types if possible.
Source§impl VersionizeOwned for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl VersionizeOwned for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
type VersionedOwned = <BooleanKeySwitchingParametersVersions as VersionsDispatch<BooleanKeySwitchingParameters>>::Owned
Source§fn versionize_owned(self) -> Self::VersionedOwned
fn versionize_owned(self) -> Self::VersionedOwned
Wraps the object into a versioned enum with a variant for each version. This will
clone the underlying types.
Source§impl VersionizeSlice for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl VersionizeSlice for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
type VersionedSlice<'vers> = Vec<<BooleanKeySwitchingParameters as Versionize>::Versioned<'vers>>
fn versionize_slice(slice: &[Self]) -> Self::VersionedSlice<'_>
Source§impl VersionizeVec for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
impl VersionizeVec for BooleanKeySwitchingParameterswhere
BooleanKeySwitchingParametersVersions: VersionsDispatch<Self>,
type VersionedVec = Vec<<BooleanKeySwitchingParameters as VersionizeOwned>::VersionedOwned>
fn versionize_vec(vec: Vec<Self>) -> Self::VersionedVec
Auto Trait Implementations§
impl Freeze for BooleanKeySwitchingParameters
impl RefUnwindSafe for BooleanKeySwitchingParameters
impl Send for BooleanKeySwitchingParameters
impl Sync for BooleanKeySwitchingParameters
impl Unpin for BooleanKeySwitchingParameters
impl UnsafeUnpin for BooleanKeySwitchingParameters
impl UnwindSafe for BooleanKeySwitchingParameters
Blanket Implementations§
impl<T> Annotation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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