Overview
Distributed Key Generation (DKG) lets a group of validators create a shared public key without any single member knowing the full private key. Each validator only holds a key share, but together they can produce threshold BLS signatures that SKALE uses for instant finality. DKG is the backbone of SKALE’s pooled security model. [Graphic placeholder: Validators exchanging commitments → forming a shared public key]How SKALE’s DKG works
- Setup –
nvalidators participate with a tolerance of up totmalicious actors. - Create polynomials – Each validator creates a secret polynomial and publishes a public commitment to its coefficients on the elliptic curve.
- Share contributions – Validators send each peer their private share (a point on the polynomial). Public commitments let everyone verify shares without revealing secrets.
- Verify and complain – If a share is missing or invalid, the recipient files a complaint. SKALE Manager (on Ethereum) arbitrates, slashes bad actors, and restarts if needed—giving economic weight to honest behavior.
- Assemble keys – Summing all public commitments yields the group public key; summing the received shares gives each validator its private key share.
Verification and Complaints
Validators check each received share against the sender’s public commitment on the curve. If the math doesn’t line up or a share never arrives, the receiver files a complaint. Instead of broadcasting questionable data to everyone, SKALE routes complaints through SKALE Manager on Ethereum. The contract verifies the evidence, slashes malicious validators, and can restart the ceremony with a clean committee. That onchain enforcement layer gives complaints real economic weight.Computing the public/private keys
When all public commitments are summed, you get the group public key. When each validator sums the private shares they received, they get their private key share. Anyt + 1 shares can reconstruct the group private key, but SKALE keeps shares distributed so the full key is never materialized—only threshold signatures are produced.
BLS Signatures
Why BLS?
BLS signatures are compact and aggregatable. They use pairing-based cryptography so individual signature shares combine cleanly into one signature that anyone can verify against the group public key. That makes them perfect for SKALE’s threshold finality.Signatures and Properties
- Hash the message to a curve point.
- Multiply by your private key share to create a signature share.
- Combine signature shares from ≥2/3 of validators; thanks to pairings, they merge into one short signature.
- Anyone verifies that single signature against the group public key.
Significance with DKG
DKG supplies the group public key and each validator’s share; BLS lets those shares combine into a single signature when a supermajority participates. Because shares never reveal the full private key, SKALE gets instant finality and pooled security without concentrating trust.Polynomial Interpolation
SKALE uses anO(t^2) Lagrange interpolation (a good fit for SKALE’s committee sizes) to combine signature shares in the exponent. It’s fast, doesn’t leak private information, and keeps validator hardware requirements modest.
