7d170f9939
* Start to add fuzzers * Update path to trusted setup in gen_corpus * Update path one more time * Add support for two more targets * Add fuzzers for remaining targets * Clean up a little * Add README * Fix typos * De-dup fuzzing files * Add newline at the end of base_fuzz * Make generic rule for displaying targets * Use regular make command * Remove duplicate targets * Update .gitignore file |
||
---|---|---|
.github/workflows | ||
bindings | ||
blst@ca03e11a3f | ||
fuzz | ||
inc | ||
lib | ||
src | ||
tests | ||
.gitignore | ||
.gitmodules | ||
LICENSE | ||
README.md | ||
go.mod | ||
go.sum |
README.md
C-KZG-4844
This is a minimal library for EIP-4844 that implements the Polynomial Commitments API. It was originally a stripped-down copy of C-KZG, but it has been heavily modified since then.
Interface functions
There are functions for KZG operations:
blob_to_kzg_commitment
compute_kzg_proof
compute_blob_kzg_proof
verify_kzg_proof
verify_blob_kzg_proof
verify_blob_kzg_proof_batch
There are functions for loading/freeing the trusted setup:
load_trusted_setup
load_trusted_setup_file
free_trusted_setup
Bindings
There are bindings for the following languages:
Language | Link |
---|---|
C# | README |
Go | README |
Java | README |
Nim | README |
Node.js | README |
Python | README |
Rust | README |
Installation
Initialize the blst submodule:
git submodule update --init
Build the blst library:
cd src
make blst
Build/test the C-KZG-4844 library:
cd src
make