mundane::public::ed25519

Struct Ed25519PrivKey

Source
pub struct Ed25519PrivKey { /* private fields */ }
Expand description

An Ed25519 private key.

An Ed25519PrivKey actually includes both the private key and the public key in order to make multiple key signing operations with the same key more efficient.

Implementations§

Source§

impl Ed25519PrivKey

Source

pub fn generate() -> Ed25519PrivKey

Generates a new private key.

Source

pub fn from_key_pair_bytes( private: [u8; 32], public: &Ed25519PubKey, ) -> Ed25519PrivKey

Constructs a new private key from a key pair.

Usually, an Ed25519 private key will be stored as a single 64-byte blob: the 32-byte private key followed by the 32-byte public key. However, we accept the two keys as separate arguments in case they are stored separately.

Source

pub fn from_private_key_bytes(private: [u8; 32]) -> Ed25519PrivKey

Constructs a new private key.

Unlike from_key_pair_bytes, from_private_key_bytes reconstructs the key (which includes both the private key and the public key internally) from only the private key.

Source

pub fn bytes(&self) -> &[u8; 64]

Gets the raw bytes of the private key.

Trait Implementations§

Source§

impl Debug for Ed25519PrivKey

Source§

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

Formats the value using the given formatter. Read more
Source§

impl PrivateKey for Ed25519PrivKey

Source§

type Public = Ed25519PubKey

The type of the public component.
Source§

fn public(&self) -> Ed25519PubKey

Gets the public key corresponding to this private key.
Source§

fn sign<S: Signature<PrivateKey = Self>>( &self, message: &[u8], ) -> Result<S, Error>

Signs a message with this private key. 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.