Skip to main content

Module keygen

Module keygen 

Source
Expand description

Distributed key generation (Protocol 2, spec §6.2): four messages, S–C.

  1. S → C KgMsg1: nonce and commitment B = RO(ssid, S, X₂).
  2. C → S KgMsg2: X₁, ephemeral DF tuple, ψ_df*, ψ_dlog.
  3. S → C KgMsg3: X₂, E, ψ_dlenc.
  4. C verifies and outputs.

Re-exports§

pub use client::ClientKeygen0;
pub use client::ClientKeygen1;
pub use server::ServerKeygen0;
pub use server::ServerKeygen1;

Modules§

client
Client side of Protocol 2.
server
Server side of Protocol 2.

Structs§

ClientKeyShare
Client output of keygen: x₁, X, E.
ServerKeyShare
Server output of keygen: x₂ = x₂′ mod q, X, E.

Constants§

KEYGEN_TIMEOUT_MS
The client must finish within this time after sending KgMsg2 (spec §6.2, step 2).

Traits§

Clock
Monotonic millisecond clock supplied by the application (the core is no_std).