c-kzg-4844/min-src
Ramana Kumar 24212039b2
Add conversions to/from uint64s to the interface
2022-09-29 19:32:23 +01:00
..
Makefile Finish adding implementation, simplify Makefile 2022-09-27 21:50:48 +01:00
README.md Add a few more implementations 2022-09-27 18:25:43 +01:00
c_kzg_4844.c Add conversions to/from uint64s to the interface 2022-09-29 19:32:23 +01:00
c_kzg_4844.h Add conversions to/from uint64s to the interface 2022-09-29 19:32:23 +01: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:

  • bytes_to_bls_field
  • vector_lincomb
  • g1_lincomb
  • blob_to_kzg_commitment
  • verify_kzg_proof
  • compute_kzg_proof
  • evaluate_polynomial_in_evaluation_form

and compute_powers from the Validator API.

We also provide load_trusted_setup and free_trusted_setup to load the trusted setup data from a file into an object that can be passed to the API functions.

The only dependency is blst. Ensure blst.h is provided at ../inc and libblst.a at ../lib. (blst.h includes blst_aux.h, but the latter is unused and can be empty.)