SafeStake Overview
  • SafeStake: A trust-minimized middle layer for secure, decentralized ETH staking
  • Security Policy
  • docs
    • Table of contents
    • SafeStake: Ecosystem
    • Attribution Notice
    • SafeStake: Running a Boot Node
    • SafeStake: Running an Operator Node
    • Distributed Key Generation
    • SafeStake: Tech Stack
    • SafeStake: Tokenomics (ongoing)
Powered by GitBook
On this page
  • Algorithm features
  • Usage
  • Unit / integration tests
  1. docs

Distributed Key Generation

PreviousSafeStake: Running an Operator NodeNextSafeStake: Tech Stack

Last updated 1 year ago

Safestake implements the distributed key generation algorithm for BLS threshold signature introduced in .

Algorithm features

The algorithm generates a BLS secret key that is secret-shared among $n$ parties, with a security threshold of $t$, supporting $(t, n)$- BLS threshold signature. More details:

  • The algorithm is completely distributed, hence no single party obtains the plain secret key.

  • Our implementation supports different security options, against either passive adversary or active adversary (Default: active security).

  • A $(3, 4)$-threshold instantiation means as long as there are 3 honest parties among 4 participants, then the security is guaranteed (i.e., tolerating at most $n-t$ malicious parties).

Usage

Usage examples can be found in the rich tests of the code repository. A standard use case is shown .

Unit / integration tests

You can run the DKG test with (active security):

cargo test test_dkg_secure_net -- --show-output
this paper
here