[−]Struct recrypt::api::TransformKey
TransformKeys allow a message encrypted to one public key (the key of the delegator) to be transformed and appear as if it was encrypted to another public key (the key of hte delegatee), or put another way, a TransformKey changes which private_key can decrypt the data.
TransfomKeys cannot, themselves, decrypt any data!
ephemeral_public_key
- ephemeral key unique to this TransforKey. Key that encrypted the encrypted_k
value
to_public_key
- public key of the delagatee
encrypted_k
- random value K, encrypted to the delegatee; used to un-roll successive levels of multi-hop transform encryption
hashed_k
- combination of the hash of K and the secret key of the delegator; used to recover K from encrypted_k
Methods
impl TransformKey
pub fn ephemeral_public_key(&self) -> &PublicKey
pub fn to_public_key(&self) -> &PublicKey
pub fn encrypted_temp_key(&self) -> &EncryptedTempKey
pub fn hashed_temp_key(&self) -> &HashedValue
pub fn public_signing_key(&self) -> &PublicSigningKey
pub fn signature(&self) -> &Ed25519Signature
pub fn new(
ephemeral_public_key: PublicKey,
to_public_key: PublicKey,
encrypted_temp_key: EncryptedTempKey,
hashed_temp_key: HashedValue,
public_signing_key: PublicSigningKey,
signature: Ed25519Signature
) -> TransformKey
ephemeral_public_key: PublicKey,
to_public_key: PublicKey,
encrypted_temp_key: EncryptedTempKey,
hashed_temp_key: HashedValue,
public_signing_key: PublicSigningKey,
signature: Ed25519Signature
) -> TransformKey
Public constructor. See TransformKey
.
pub fn augment(&self, private_key: &PrivateKey) -> Result<TransformKey, ApiErr>
Augment the TransformKey using private_key. If the private_key the TransformKey was delegating from was unaugmented this can be used to make the TransformKey useful for delegation.
Trait Implementations
impl Hashable for TransformKey
fn to_bytes(&self) -> ByteVector
impl PartialEq<TransformKey> for TransformKey
fn eq(&self, other: &TransformKey) -> bool
#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests for !=
.
impl Clone for TransformKey
fn clone(&self) -> TransformKey
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for TransformKey
Auto Trait Implementations
impl Send for TransformKey
impl Sync for TransformKey
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Same for T
type Output = T
Should always be Self