You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
arnaucube 797d4c50a7 Add cmd to contribute to the ceremony (full flow) 2 years ago
.github/workflows Add GHA to check tests 2 years ago
client Add client to interact with Sequencer 2 years ago
cmd Add cmd to contribute to the ceremony (full flow) 2 years ago
.gitignore Add client to interact with Sequencer 2 years ago
LICENSE init repo 2 years ago
README.md Add cmd to contribute to the ceremony (full flow) 2 years ago
batch_contribution_10.json Add BatchContribution parsers & real json test 2 years ago
current_state_10.json Add json marshalers for State transcripts, test with real state data from sequencer 2 years ago
go.mod Add client to interact with Sequencer 2 years ago
go.sum Add client to interact with Sequencer 2 years ago
parsers.go Add BatchContribution parsers & real json test 2 years ago
parsers_test.go Add json marshalers for State transcripts, test with real state data from sequencer 2 years ago
powersoftau.go Add BatchContribution computation 2 years ago
powersoftau_test.go Add BatchContribution parsers & real json test 2 years ago

README.md

eth-kzg-ceremony-alt GoDoc Test

Alternative (non-official) implementation in Go of the contributor for the Ethereum KZG Trusted Setup Ceremony.

The purpose of this repo is to use it to contribute to the upcoming Ethereum KZG Trusted Setup Ceremony, without using the official implementation.

The Ceremony is considered safe as long as there is at least one honest participant, with the idea that if you participate, assuming that you consider yourself honest, you can consider the Ceremony safe. Ethereum will run the Ceremony which will be used at least in EIP-4844.

Probably most of the contributions will be generated with the same code (official impl, which has been audited). The idea of this repo is to try to bring more diversity to the table with another independent implementation.

This implementation has been done without looking at the other impls code (except for the point parsers test vectors), in order to not be biased by that code.

This code has not been audited, use it at your own risk.

Why in Go? Ideally would have done this code using Rust & arkworks, but the official impl already uses that.

Documents used for this implementation:

Usage

Go into the cmd dir, and run:

> go run cmd.go

eth-kzg-ceremony-alt
====================

Usage of /tmp/go-build4278582969/b001/exe/cmd:
  -u, --url string       sequencer url (default "https://kzg-ceremony-sequencer-dev.fly.dev")
  -r, --rand string      randomness
  -s, --sleeptime uint   time (seconds) sleeping before trying again to be the next contributor (default 10)