mundane::public::ec

Enum EcPrivKeyAnyCurve

Source
pub enum EcPrivKeyAnyCurve {
    P256(EcPrivKey<P256>),
    P384(EcPrivKey<P384>),
    P521(EcPrivKey<P521>),
}
Expand description

An elliptic curve private key whose curve is unknown at compile time.

An EcPrivKeyAnyCurve is an enum of EcPrivKeys over the three supported curves.

Variants§

Implementations§

Source§

impl EcPrivKeyAnyCurve

Source

pub fn public(&self) -> EcPubKeyAnyCurve

Gets the public key corresponding to this private key.

Source

pub fn parse_from_der(bytes: &[u8]) -> Result<EcPrivKeyAnyCurve, Error>

Parses a private key in DER format with any curve.

parse_from_der is like DerPrivateKey::parse_from_der, but it accepts any PCurve rather than a particular, static curve.

Since EcPrivKey requires a static PCurve type parameter, the parse_from_der function on EcPrivKey’s DerPrivateKey implementation can only be called when the curve is known ahead of time. This function, on the other hand, accepts any curve.

Because the curve is not known statically, one must be specified in the DER input.

Trait Implementations§

Source§

impl Debug for EcPrivKeyAnyCurve

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.