#[repr(C)]
pub struct Ecdh1DeriveParams<'a> { /* private fields */ }
Expand description

ECDH derivation parameters.

The elliptic curve Diffie-Hellman (ECDH) key derivation mechanism is a mechanism for key derivation based on the Diffie-Hellman version of the elliptic curve key agreement scheme, as defined in ANSI X9.63, where each party contributes one key pair all using the same EC domain parameters.

This structure wraps a CK_ECDH1_DERIVE_PARAMS structure.

Implementations§

source§

impl<'a> Ecdh1DeriveParams<'a>

source

pub fn new(kdf: EcKdf<'a>, public_data: &'a [u8]) -> Self

Construct ECDH derivation parameters.

§Arguments
  • kdf - The key derivation function to use.

  • public_data - The other party’s public key. A token MUST be able to accept this value encoded as a raw octet string (as per section A.5.2 of ANSI X9.62). A token MAY, in addition, support accepting this value as a DER-encoded ECPoint (as per section E.6 of ANSI X9.62) i.e. the same as a CKA_EC_POINT encoding. The calling application is responsible for converting the offered public key to the compressed or uncompressed forms of these encodings if the token does not support the offered form.

Trait Implementations§

source§

impl<'a> Clone for Ecdh1DeriveParams<'a>

source§

fn clone(&self) -> Ecdh1DeriveParams<'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Debug for Ecdh1DeriveParams<'a>

source§

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

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

impl<'a> Copy for Ecdh1DeriveParams<'a>

Auto Trait Implementations§

§

impl<'a> RefUnwindSafe for Ecdh1DeriveParams<'a>

§

impl<'a> !Send for Ecdh1DeriveParams<'a>

§

impl<'a> !Sync for Ecdh1DeriveParams<'a>

§

impl<'a> Unpin for Ecdh1DeriveParams<'a>

§

impl<'a> UnwindSafe for Ecdh1DeriveParams<'a>

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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.