[−][src]Enum sequoia_openpgp::packet::PKESK
Holds an asymmetrically encrypted session key.
The session key is needed to decrypt the actual ciphertext. See Section 5.1 of RFC 4880 for details.
Note: This enum cannot be exhaustively matched to allow future extensions.
Variants
V3(PKESK3)
PKESK packet version 3.
Implementations
impl PKESK
[src]
Methods from Deref<Target = PKESK3>
pub fn recipient(&self) -> &KeyID
[src]
Gets the recipient.
pub fn set_recipient(&mut self, recipient: KeyID) -> KeyID
[src]
Sets the recipient.
pub fn pk_algo(&self) -> PublicKeyAlgorithm
[src]
Gets the public key algorithm.
pub fn set_pk_algo(&mut self, algo: PublicKeyAlgorithm) -> PublicKeyAlgorithm
[src]
Sets the public key algorithm.
pub fn esk(&self) -> &Ciphertext
[src]
Gets the encrypted session key.
pub fn set_esk(&mut self, esk: Ciphertext) -> Ciphertext
[src]
Sets the encrypted session key.
pub fn decrypt(
&self,
decryptor: &mut dyn Decryptor,
sym_algo_hint: Option<SymmetricAlgorithm>
) -> Result<(SymmetricAlgorithm, SessionKey)>
[src]
&self,
decryptor: &mut dyn Decryptor,
sym_algo_hint: Option<SymmetricAlgorithm>
) -> Result<(SymmetricAlgorithm, SessionKey)>
Decrypts the encrypted session key.
If the symmetric algorithm used to encrypt the message is known in advance, it should be given as argument. This allows us to reduce the side-channel leakage of the decryption operation for RSA.
Returns the session key and symmetric algorithm used to encrypt the following payload.
Trait Implementations
impl Arbitrary for PKESK
[src]
fn arbitrary<G: Gen>(g: &mut G) -> Self
[src]
fn shrink(&self) -> Box<dyn Iterator<Item = Self> + 'static>
[src]
impl Clone for PKESK
[src]
impl Debug for PKESK
[src]
impl Deref for PKESK
[src]
impl DerefMut for PKESK
[src]
impl Eq for PKESK
[src]
impl From<PKESK> for Packet
[src]
impl From<PKESK3> for PKESK
[src]
impl Hash for PKESK
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Marshal for PKESK
[src]
fn serialize(&self, o: &mut dyn Write) -> Result<()>
[src]
fn export(&self, o: &mut dyn Write) -> Result<()>
[src]
impl MarshalInto for PKESK
[src]
fn serialized_len(&self) -> usize
[src]
fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>
[src]
fn to_vec(&self) -> Result<Vec<u8>>
[src]
fn export_into(&self, buf: &mut [u8]) -> Result<usize>
[src]
fn export_to_vec(&self) -> Result<Vec<u8>>
[src]
impl<'a> Parse<'a, PKESK> for PKESK
[src]
fn from_reader<R: 'a + Read>(reader: R) -> Result<Self>
[src]
fn from_file<P: AsRef<Path>>(path: P) -> Result<T>
[src]
fn from_bytes<D: AsRef<[u8]> + ?Sized>(data: &'a D) -> Result<T>
[src]
impl PartialEq<PKESK> for PKESK
[src]
impl StructuralEq for PKESK
[src]
impl StructuralPartialEq for PKESK
[src]
Auto Trait Implementations
impl RefUnwindSafe for PKESK
impl Send for PKESK
impl Sync for PKESK
impl Unpin for PKESK
impl UnwindSafe for PKESK
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> 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>,