Struct nucypher_core::TreasureMap
source · pub struct TreasureMap {
pub threshold: u8,
pub hrac: HRAC,
pub destinations: BTreeMap<Address, EncryptedKeyFrag>,
pub policy_encrypting_key: PublicKey,
pub publisher_verifying_key: PublicKey,
}Expand description
A structure containing KeyFrag objects encrypted for Ursulas chosen for this policy.
Fields§
§threshold: u8Threshold for successful re-encryption.
hrac: HRACPolicy HRAC.
destinations: BTreeMap<Address, EncryptedKeyFrag>Encrypted key frags assigned to target Ursulas.
policy_encrypting_key: PublicKeyA key to create encrypted messages under this policy.
publisher_verifying_key: PublicKeyPublisher’s verifying key.
Implementations§
source§impl TreasureMap
impl TreasureMap
sourcepub fn new(
signer: &Signer,
hrac: &HRAC,
policy_encrypting_key: &PublicKey,
assigned_kfrags: impl IntoIterator<Item = (Address, (PublicKey, VerifiedKeyFrag))>,
threshold: u8
) -> Self
pub fn new( signer: &Signer, hrac: &HRAC, policy_encrypting_key: &PublicKey, assigned_kfrags: impl IntoIterator<Item = (Address, (PublicKey, VerifiedKeyFrag))>, threshold: u8 ) -> Self
Create a new treasure map for a collection of ursulas and kfrags.
Panics if threshold is set to 0,
the number of assigned keyfrags is less than threshold,
or if the addresses in assigned_kfrags repeat.
sourcepub fn encrypt(
&self,
signer: &Signer,
recipient_key: &PublicKey
) -> EncryptedTreasureMap
pub fn encrypt( &self, signer: &Signer, recipient_key: &PublicKey ) -> EncryptedTreasureMap
Encrypts the treasure map for Bob.
sourcepub fn make_revocation_orders(&self, signer: &Signer) -> Vec<RevocationOrder>
pub fn make_revocation_orders(&self, signer: &Signer) -> Vec<RevocationOrder>
Makes revocation orders for all destinations in the treasure map.
Trait Implementations§
source§impl Clone for TreasureMap
impl Clone for TreasureMap
source§fn clone(&self) -> TreasureMap
fn clone(&self) -> TreasureMap
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for TreasureMap
impl Debug for TreasureMap
source§impl<'de> Deserialize<'de> for TreasureMap
impl<'de> Deserialize<'de> for TreasureMap
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
source§impl PartialEq<TreasureMap> for TreasureMap
impl PartialEq<TreasureMap> for TreasureMap
source§fn eq(&self, other: &TreasureMap) -> bool
fn eq(&self, other: &TreasureMap) -> bool
This method tests for
self and other values to be equal, and is used
by ==.