[−]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, RecryptErr>
&self,
private_key: &PrivateKey
) -> Result<TransformKey, RecryptErr>
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 Clone for TransformKey
fn clone(&self) -> TransformKey
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for TransformKey
impl Eq for TransformKey
impl Hash for TransformKey
fn hash<__H>(&self, __state: &mut __H) where
__H: Hasher,
__H: Hasher,
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Hashable for TransformKey
fn to_bytes(&self) -> ByteVector
impl PartialEq<TransformKey> for TransformKey
Auto Trait Implementations
impl RefUnwindSafe for TransformKey
impl Send for TransformKey
impl Sync for TransformKey
impl Unpin for TransformKey
impl UnwindSafe for TransformKey
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
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, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,