pub trait PrivateKey: Sized {
    type PublicKeyMaterial: PublicKey<PrivateKeyMaterial = Self>;

    // Provided method
    fn public_key(&self) -> Self::PublicKeyMaterial { ... }
}
Expand description

A type family for key material that should remain secret and has an associated type of the PublicKey family.

Required Associated Types§

type PublicKeyMaterial: PublicKey<PrivateKeyMaterial = Self>

We require public / private types to be coupled, i.e. their associated type is each other.

Provided Methods§

fn public_key(&self) -> Self::PublicKeyMaterial

Returns the associated public key

Implementors§