#public-key #consensus #threshold #generate-keys #networking


Safe Network Synchronous Distributed Key Generation: enables dealerless section key generation

11 stable releases (3 major)

3.1.4 Mar 22, 2023
3.1.3 Mar 20, 2023
3.1.2 Feb 1, 2023
3.1.1 Nov 8, 2022
0.1.0 Jul 26, 2022

#271 in Asynchronous

Download history 21/week @ 2024-01-22 8/week @ 2024-02-12 1/week @ 2024-02-19 20/week @ 2024-02-26 9/week @ 2024-03-04 26/week @ 2024-03-11 153/week @ 2024-03-18

208 downloads per month
Used in 4 crates (via sn_interface)

MIT license

1.5K SLoC


Synchronous Distributed Key Generation

MaidSafe website Safe Network Forum


This Safe Network SDKG module enables sections to create a Section Key without a trusted dealer. It is based on the Audited code from poanetwork's hbbft.

How it works

  • Participants know of each other's bls public key
  • Each create a Part and share it with the others
  • They check each Part and share their Ack over each Part
  • Participants share their set of AllAcks signed, and check that all the others have the same set
  • Once everyone has all the participants signatures over this set they generate the key

We differ from poanetwork's original implementation in that we require total participation: in the Part validation process, we require an Ack from everyone instead of just a threshold amount.


~159K SLoC