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 ==.source§impl<'a> ProtocolObject<'a> for TreasureMap
impl<'a> ProtocolObject<'a> for TreasureMap
source§impl Serialize for TreasureMap
impl Serialize for TreasureMap
impl StructuralPartialEq for TreasureMap
Auto Trait Implementations§
impl RefUnwindSafe for TreasureMap
impl Send for TreasureMap
impl Sync for TreasureMap
impl Unpin for TreasureMap
impl UnwindSafe for TreasureMap
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
Mutably borrows from an owned value. Read more