deltachat::key

Trait DcKey

Source
pub(crate) trait DcKey:
    Serialize
    + Deserializable
    + PublicKeyTrait
    + Clone {
    // Required methods
    fn to_asc(&self, header: Option<(&str, &str)>) -> String;
    fn is_private() -> bool;

    // Provided methods
    fn from_slice(bytes: &[u8]) -> Result<Self> { ... }
    fn from_base64(data: &str) -> Result<Self> { ... }
    fn from_asc(data: &str) -> Result<(Self, BTreeMap<String, String>)> { ... }
    fn to_bytes(&self) -> Vec<u8>  { ... }
    fn to_base64(&self) -> String { ... }
    fn dc_fingerprint(&self) -> Fingerprint { ... }
}
Expand description

Convenience trait for working with keys.

This trait is implemented for rPGP’s SignedPublicKey and SignedSecretKey types and makes working with them a little easier in the deltachat world.

Required Methods§

Source

fn to_asc(&self, header: Option<(&str, &str)>) -> String

Serialise the key to ASCII-armored representation.

Each header line must be terminated by \r\n. Only allows setting one header as a simplification since that’s the only way it’s used so far.

Source

fn is_private() -> bool

Provided Methods§

Source

fn from_slice(bytes: &[u8]) -> Result<Self>

Create a key from some bytes.

Source

fn from_base64(data: &str) -> Result<Self>

Create a key from a base64 string.

Source

fn from_asc(data: &str) -> Result<(Self, BTreeMap<String, String>)>

Create a key from an ASCII-armored string.

Returns the key and a map of any headers which might have been set in the ASCII-armored representation.

Source

fn to_bytes(&self) -> Vec<u8>

Serialise the key as bytes.

Source

fn to_base64(&self) -> String

Serialise the key to a base64 string.

Source

fn dc_fingerprint(&self) -> Fingerprint

The fingerprint for the key.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§