Crate npvdkgrs

Crate npvdkgrs 

Source
Expand description

Non-interactive publicly verifiable distributed key generation and resharing algorithm over BLS12-381 Built using Arkworks

This library provides an implementation of a non-interactive, publicly verifiable distributed key generation (DKG) and key resharing protocol using the BLS12-381 pairing-friendly elliptic curve.

§Features

  • Non-interactive DKG and resharing
  • Publicly verifiable
  • Secure against malicious adversaries
  • Built on Arkworks & round-based model
  • Single-round DKG and resharing
  • Non-interactive, single-round signing
  • Asynchronous API
  • Optimized performance

§Usage

See the README for usage examples and more information.

§Version Compatibility

This crate is compatible with Rust 1.80.0 and later.

§References

See: NPVDKGRS for more information.

Re-exports§

pub use addr::Address;
pub use keys::Keypair;
pub use keys::PublicKey;
pub use keys::SecretKey;
pub use params::Parameters;
pub use party::KeysharePackage;
pub use rounds::keygen;
pub use rounds::refresh;
pub use rounds::sign;
pub use sig::Signature;

Modules§

addr
Addresses and Public Keys
ark
Arkworks specific utilities
cipher
Encryption and Decryption functions
hash
Hashing functions
keys
Key Pair is a struct that contains the public and private keys
maps
Share Maps
params
DKG Protocol Parameters
party
Participants in the protocol
poly
Working with Polynomials.
rounds
NPVDKG Protocol Rounds
share
Sharing of secrets and verification
sig
Signing and Signatures
trace
Progress tracing Traces progress of protocol execution

Constants§

MIN_SUPPORTED_RUST_VERSION
VERSION