[][src]Struct sequoia_openpgp::packet::key::Unencrypted

pub struct Unencrypted { /* fields omitted */ }

Unencrypted secret key material.

This data structure is used by the SecretKeyMaterial enum.

Unlike an Encrypted key, this key an be used as-is.

The secret key is encrypted in memory and only decrypted on demand. This helps protect against heartbleed-style attacks where a buffer over-read allows an attacker to read from the process's address space. This protection is less important for Rust programs, which are memory safe. However, it is essential when Sequoia is used via its FFI.

See crypto::mem::Encrypted for details.

Methods

impl Unencrypted[src]

pub fn map<F, T>(&self, fun: F) -> T where
    F: FnMut(&SecretKeyMaterial) -> T, 
[src]

Maps the given function over the secret.

pub fn encrypt(&self, password: &Password) -> Result<Encrypted>[src]

Encrypts the secret key material using password.

This encrypts the secret key material using an AES 256 key derived from the password using the default s2k scheme.

Trait Implementations

impl From<Unencrypted> for SecretKeyMaterial[src]

impl From<SecretKeyMaterial> for Unencrypted[src]

impl Eq for Unencrypted[src]

impl PartialEq<Unencrypted> for Unencrypted[src]

impl Clone for Unencrypted[src]

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

Performs copy-assignment from source. Read more

impl Hash for Unencrypted[src]

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 Debug for Unencrypted[src]

Auto Trait Implementations

impl Send for Unencrypted

impl Sync for Unencrypted

Blanket Implementations

impl<T> From for T[src]

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

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

type Owned = T

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

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

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

The type returned in the event of a conversion error.

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