pub struct SMPCConfig {
pub num_participants: usize,
pub threshold: usize,
pub security_parameter: usize,
pub enable_homomorphic: bool,
pub enable_zk_proofs: bool,
pub protocol_variant: SMPCProtocol,
pub communication_security: CommunicationSecurity,
pub malicious_tolerance: MaliciousTolerance,
}Expand description
Configuration for SMPC protocols
Fields§
§num_participants: usizeNumber of participants
threshold: usizeThreshold for secret sharing (k in k-out-of-n). Must be in 1..=num_participants.
security_parameter: usizeSecurity parameter recorded for auditing. Informational only.
enable_homomorphic: boolRequest homomorphic encryption.
No homomorphic backend exists; super::coordinator::SMPCCoordinator::new rejects true.
enable_zk_proofs: boolRequest zero-knowledge proofs.
No proof system exists; super::coordinator::SMPCCoordinator::new rejects true.
protocol_variant: SMPCProtocolSMPC protocol variant. Only SMPCProtocol::FederatedSMPC is implemented.
communication_security: CommunicationSecurityCommunication security level. Only CommunicationSecurity::SemiHonest is
implemented.
malicious_tolerance: MaliciousToleranceMalicious adversary tolerance requested by the caller.
No malicious-security mechanism is implemented, so the achieved tolerance
reported in SMPCSecurityGuarantees is always zero.
Trait Implementations§
Source§impl Clone for SMPCConfig
impl Clone for SMPCConfig
Source§fn clone(&self) -> SMPCConfig
fn clone(&self) -> SMPCConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for SMPCConfig
impl RefUnwindSafe for SMPCConfig
impl Send for SMPCConfig
impl Sync for SMPCConfig
impl Unpin for SMPCConfig
impl UnsafeUnpin for SMPCConfig
impl UnwindSafe for SMPCConfig
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> ⓘ
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> ⓘ
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.