[][src]Struct ring::agreement::EphemeralPrivateKey

pub struct EphemeralPrivateKey { /* fields omitted */ }

An ephemeral private key for use (only) with agree_ephemeral. The signature of agree_ephemeral ensures that an EphemeralPrivateKey can be used for at most one key agreement.

Methods

impl<'a> EphemeralPrivateKey[src]

pub fn generate(
    alg: &'static Algorithm,
    rng: &dyn SecureRandom
) -> Result<EphemeralPrivateKey, Unspecified>
[src]

Generate a new ephemeral private key for the given algorithm.

C analog: EC_KEY_new_by_curve_name + EC_KEY_generate_key.

pub fn algorithm(&self) -> &'static Algorithm[src]

The key exchange algorithm.

pub fn public_key_len(&self) -> usize[src]

The size in bytes of the encoded public key.

pub fn compute_public_key(&self, out: &mut [u8]) -> Result<(), Unspecified>[src]

Computes the public key from the private key's value and fills out with the public point encoded in the standard form for the algorithm.

out.len() must be equal to the value returned by public_key_len.

Auto Trait Implementations

impl Unpin for EphemeralPrivateKey

impl Send for EphemeralPrivateKey

impl Sync for EphemeralPrivateKey

impl UnwindSafe for EphemeralPrivateKey

impl RefUnwindSafe for EphemeralPrivateKey

Blanket Implementations

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

type Error = Infallible

The type returned in the event of a conversion error.

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

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> 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> Borrow<T> for T where
    T: ?Sized
[src]

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

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