Distributed key generation (DKG)

DKG creates the threshold key. Each party samples a random polynomial and commits to it (Feldman VSS); the aggregate public key is the sum of all parties’ constant-term commitments, and each party’s share is the sum of the shares it received.

  1. Round 1 — every party broadcasts its commitment list and sends each peer a directed share of its polynomial.
  2. Round 2 — each party verifies incoming shares against the sender’s commitments, rejects byzantine parties, and sums valid fragments into its aggregate share.

In Confium, confium-tc-frost-ed25519 and confium-tc-frost-p256 ship DKG sessions; the framework drives rounds via confium-tc-core sessions. For a working example see run a local DKG.