spark_sdk/signer/traits/
shamir.rs

1use crate::error::SparkSdkError;
2
3use spark_cryptography::secret_sharing::secret_sharing::VerifiableSecretShare;
4
5pub trait SparkSignerShamir {
6    fn split_with_verifiable_secret_sharing(
7        &self,
8        message: Vec<u8>,
9        threshold: usize,
10        num_shares: usize,
11    ) -> Result<Vec<VerifiableSecretShare>, SparkSdkError>;
12
13    fn split_from_public_key_with_verifiable_secret_sharing(
14        &self,
15        public_key: Vec<u8>,
16        threshold: usize,
17        num_shares: usize,
18    ) -> Result<Vec<VerifiableSecretShare>, SparkSdkError>;
19}