Trait sarkara::kex::KeyExchange [] [src]

pub trait KeyExchange {
    type PrivateKey;
    type PublicKey;
    type Reconciliation;
    fn sk_length() -> usize;
    fn pk_length() -> usize;
    fn rec_length() -> usize;
    fn keygen() -> (Self::PrivateKey, Self::PublicKey);
    fn exchange(sharedkey: &mut [u8], pk: &Self::PublicKey) -> Self::Reconciliation;
    fn exchange_from(sharedkey: &mut [u8], sk: &Self::PrivateKey, rec: &Self::Reconciliation);
}

KeyExchange trait.

Associated Types

Private key.

Public key.

Reconciliation data.

Required Methods

Secret key length.

Public key length.

Reconciliation data length.

Generate keypair.

Key exchange, from Public key.

key exchange, from Reconciliation data.

Implementors