Enum sequoia_openpgp::packet::SKESK[][src]

#[non_exhaustive]
pub enum SKESK {
    V4(SKESK4),
    V5(SKESK5),
}

Holds a symmetrically encrypted session key.

The session key is used to decrypt the actual ciphertext, which is typically stored in a SEIP or AED packet. See Section 5.3 of RFC 4880 for details.

An SKESK packet is not normally instantiated directly. In most cases, you’ll create one as a side-effect of encrypting a message using the streaming serializer, or parsing an encrypted message using the PacketParser.

Note: This enum cannot be exhaustively matched to allow future extensions.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
V4(SKESK4)

SKESK packet version 4.

V5(SKESK5)

SKESK packet version 5.

This feature is experimental.

Implementations

impl SKESK[src]

pub fn decrypt(
    &self,
    password: &Password
) -> Result<(SymmetricAlgorithm, SessionKey)>
[src]

Derives the key inside this SKESK from password. Returns a tuple of the symmetric cipher to use with the key and the key itself.

impl SKESK[src]

pub fn version(&self) -> u8[src]

Gets the version.

Trait Implementations

impl Clone for SKESK[src]

fn clone(&self) -> SKESK[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for SKESK[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl From<SKESK> for Packet[src]

fn from(p: SKESK) -> Self[src]

Performs the conversion.

impl From<SKESK4> for SKESK[src]

fn from(p: SKESK4) -> Self[src]

Performs the conversion.

impl From<SKESK5> for SKESK[src]

fn from(p: SKESK5) -> Self[src]

Performs the conversion.

impl Hash for SKESK[src]

fn hash<__H: Hasher>(&self, state: &mut __H)[src]

Feeds this value into the given Hasher. Read more

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given Hasher. Read more

impl IntoIterator for SKESK[src]

Implement IntoIterator so that cert::insert_packets(sig) just works.

type Item = SKESK

The type of the elements being iterated over.

type IntoIter = Once<SKESK>

Which kind of iterator are we turning this into?

fn into_iter(self) -> Self::IntoIter[src]

Creates an iterator from a value. Read more

impl Marshal for SKESK[src]

fn serialize(&self, o: &mut dyn Write) -> Result<()>[src]

Writes a serialized version of the object to o.

fn export(&self, o: &mut dyn Write) -> Result<()>[src]

Exports a serialized version of the object to o. Read more

impl MarshalInto for SKESK[src]

fn serialized_len(&self) -> usize[src]

Computes the maximal length of the serialized representation. Read more

fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>[src]

Serializes into the given buffer. Read more

fn to_vec(&self) -> Result<Vec<u8>>[src]

Serializes the packet to a vector.

fn export_into(&self, buf: &mut [u8]) -> Result<usize>[src]

Exports into the given buffer. Read more

fn export_to_vec(&self) -> Result<Vec<u8>>[src]

Exports to a vector. Read more

impl<'a> Parse<'a, SKESK> for SKESK[src]

fn from_reader<R: 'a + Read + Send + Sync>(reader: R) -> Result<Self>[src]

Reads from the given reader.

fn from_file<P: AsRef<Path>>(path: P) -> Result<T>[src]

Reads from the given file. Read more

fn from_bytes<D: AsRef<[u8]> + ?Sized + Send + Sync>(data: &'a D) -> Result<T>[src]

Reads from the given slice. Read more

impl PartialEq<SKESK> for SKESK[src]

fn eq(&self, other: &SKESK) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &SKESK) -> bool[src]

This method tests for !=.

impl Eq for SKESK[src]

impl StructuralEq for SKESK[src]

impl StructuralPartialEq for SKESK[src]

Auto Trait Implementations

impl RefUnwindSafe for SKESK

impl Send for SKESK

impl Sync for SKESK

impl Unpin for SKESK

impl UnwindSafe for SKESK

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> DynClone for T where
    T: Clone
[src]

pub fn __clone_box(&self, Private) -> *mut ()[src]

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.