Skip to main content

DecodePublicKey

Trait DecodePublicKey 

Source
pub trait DecodePublicKey: Sized {
    // Required method
    fn from_public_key_der(bytes: &[u8]) -> Result<Self, Error>;

    // Provided methods
    fn from_public_key_pem(s: &str) -> Result<Self, Error> { ... }
    fn read_public_key_der_file(path: impl AsRef<Path>) -> Result<Self, Error> { ... }
    fn read_public_key_pem_file(path: impl AsRef<Path>) -> Result<Self, Error> { ... }
}
Expand description

Parse a public key object from an encoded SPKI document.

Required Methods§

Source

fn from_public_key_der(bytes: &[u8]) -> Result<Self, Error>

Deserialize object from ASN.1 DER-encoded [SubjectPublicKeyInfo] (binary format).

§Errors

Returns decoding errors specific to the concrete type which impls this trait.

Provided Methods§

Source

fn from_public_key_pem(s: &str) -> Result<Self, Error>

Deserialize PEM-encoded [SubjectPublicKeyInfo].

Keys in this format begin with the following delimiter:

-----BEGIN PUBLIC KEY-----
§Errors

Returns decoding errors specific to the concrete type which impls this trait.

Source

fn read_public_key_der_file(path: impl AsRef<Path>) -> Result<Self, Error>

Load public key object from an ASN.1 DER-encoded file on the local filesystem (binary format).

§Errors

Returns decoding errors specific to the concrete type which impls this trait.

Source

fn read_public_key_pem_file(path: impl AsRef<Path>) -> Result<Self, Error>

Load public key object from a PEM-encoded file on the local filesystem.

§Errors

Returns decoding errors specific to the concrete type which impls this trait.

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§

Source§

impl<T> DecodePublicKey for T
where T: for<'a> TryFrom<SubjectPublicKeyInfo<AnyRef<'a>, BitStringRef<'a>>, Error = Error>,