Enum sda_protocol::LinearSecretSharingScheme
[−]
[src]
pub enum LinearSecretSharingScheme { Additive { share_count: usize, modulus: i64, }, PackedShamir { secret_count: usize, share_count: usize, privacy_threshold: usize, prime_modulus: i64, omega_secrets: i64, omega_shares: i64, }, }
Supported secret sharing schemes and their parameters.
Variants
Additive
Computionally efficient basic scheme.
Fields of Additive
Number of shares to generate for each secret. | |
modulus: i64 | Modulus specifying the additive group in which to operate. |
PackedShamir
Packed Shamir scheme allowing for work to be distributed across many clerks.
Fields of PackedShamir
secret_count: usize | Dimension of secrets, i.e. number of components in vector. |
Number of shares to generate for each vector of secrets. | |
privacy_threshold: usize | Number of shares needed to reconstruct. |
prime_modulus: i64 | Prime number specifying the prime field in which to operate. |
omega_secrets: i64 | TODO |
TODO |
Methods
impl LinearSecretSharingScheme
[src]
Derived properties of the secret sharing schemes.
fn input_size(&self) -> usize
Number of secrets shared together.
fn output_size(&self) -> usize
Number of shares output by the scheme, which must match the number of clerks in the aggregation's committee.
fn privacy_threshold(&self) -> usize
Upper bound for the number of clerks that must collaborate with the server before privacy is leaked.
fn reconstruction_threshold(&self) -> usize
Lower bound for the number of clerks needed to correctly reconstruct.
Trait Implementations
impl Clone for LinearSecretSharingScheme
[src]
fn clone(&self) -> LinearSecretSharingScheme
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Debug for LinearSecretSharingScheme
[src]
impl Eq for LinearSecretSharingScheme
[src]
impl PartialEq for LinearSecretSharingScheme
[src]
fn eq(&self, __arg_0: &LinearSecretSharingScheme) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &LinearSecretSharingScheme) -> bool
This method tests for !=
.