Skip to content

An Ethereum KZG Ceremony client written in Rust 🦀

Notifications You must be signed in to change notification settings

kariy/majlis-kzg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Majlis-KZG

This is a client implementation for participating in the Ethereum KZG Ceremony. It is written in Rust 🦀 so you know it is BLAZINGLY fast.

Overview

The KZG Ceremony is a coordinated public ritual which will provide a cryptographic foundation for Ethereum scaling efforts like EIP-4844 (aka proto-danksharding). These types of events are also known as "Trusted Setups," famously used by Zcash to bootstrap the chain's privacy features. However, they can also be used to support scaling mechanisms, as Ethereum plans to do.

Proto-danksharding requires a new cryptographic scheme: KZG Commitments. These will generate a "structured reference string" (SRS) which is needed for the commitments to work. An SRS is secure as long as a single ceremony participant successfully conceals their secret.

It's a multi-party ceremony: each contributor creates a secret and runs a computation to mix it with previous contributions. Then, the output is made public and passed to the next contributor. The final output will be included in a future upgrade to help scale the Ethereum network.

Cryptographic libraries

  • ChaCha20 CSPRNG for generating the secrets
  • bls12_381 BLS12-381 curve
  • blsful BLS Signature over the BLS12-381 curve

About

An Ethereum KZG Ceremony client written in Rust 🦀

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages