Minimal 4844 version of c-kzg
Go to file
Justin Traglia 70ed24c1ec
Reorganize functions to match spec (#71)
* Reorganize functions to match spec

* Add two forward function definitions

* Remove extern prefix from sha256 funcs

* Delete extra blank line
2023-01-18 22:56:09 +00:00
.github/workflows [Java binding] Check there are `count` commitments present (#68) 2023-01-17 17:47:46 +00:00
bindings Minor rust bindings cleanup (#75) 2023-01-18 21:45:44 +00:00
blst@6382d67c72 Add blst as submodule 2022-11-03 23:15:50 -07:00
inc Use BYTES_PER_FIELD_ELEMENT 2022-11-04 11:44:57 -07:00
lib Insert lib/ directory and update Readme 2021-02-02 11:36:36 +00:00
src Reorganize functions to match spec (#71) 2023-01-18 22:56:09 +00:00
.gitignore Rust bindings (#4) 2023-01-12 17:50:12 +00:00
.gitmodules Patch blst submodule sha 2022-11-04 00:13:02 -07:00
LICENSE Initial commit 2021-02-01 20:15:45 +00:00
README.md Remove mentions of to/from bytes in readme (#70) 2023-01-17 20:58:45 +00:00
blst_sha.patch Patch blst submodule sha 2022-11-04 00:13:02 -07:00

README.md

C-KZG-4844: A minimal library for EIP-4844 Polynomial Commitments

This is a copy of C-KZG stripped-down to support the Polynomial Commitments API:

  • compute_aggregate_kzg_proof
  • verify_aggregate_kzg_proof
  • blob_to_kzg_commitment
  • verify_kzg_proof

We also provide functions for loading/freeing the trusted setup:

  • load_trusted_setup
  • load_trusted_setup_file
  • free_trusted_setup

Installation

Initialize the blst submodule:

git submodule update --init

Build blst:

cd src
make blst

Build the C-KZG code:

cd src
make