* Replace g1 points with g1 lagrange points
* Swap out validate_kzg_g1 with blst funcs
* Update minimal preset too
* Fix java & nodejs bindings
* Put variables in smaller scope
* Update some comments
* Remove FFTSettings (#2)
* Fix issue when expanding roots of unity
* Fix formatting
* Revert back to using intermediate array
* Add missing c_kzg_free
* Fix some nits
* Replace free_kzg_settings with free_trusted_setup
* Add parens to NUM_ELEMENTS
Co-authored-by: George Kadianakis <desnacked@riseup.net>
* Move memcpy to the end
* Revert "Move memcpy to the end"
This reverts commit 5331c7feadc92e4b5dd5d4e7512e4be563d7f386.
* Add comment about free_trusted_setup
* Move check before alloc
* Add remark
* Delete unnecessary blank line
* Fix asn's nits
* Update comment for roots_of_unity in header
Co-authored-by: Gottfried Herold <GottfriedHerold@users.noreply.github.com>
* Fix formatting
* Update comment about max_scale
Co-authored-by: Gottfried Herold <GottfriedHerold@users.noreply.github.com>
---------
Co-authored-by: Suphanat Chunhapanya <haxx.pop@gmail.com>
Co-authored-by: George Kadianakis <desnacked@riseup.net>
Co-authored-by: Gottfried Herold <GottfriedHerold@users.noreply.github.com>
* Intentionally fail to compile with a FIELD_ELEMENTS_PER_BLOB value that is not a power of 2.
We do not want to support or maintain this case, so let us be explicit about it.
* Update src/c_kzg_4844.h
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
* Update src/c_kzg_4844.h
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
---------
Co-authored-by: George Kadianakis <desnacked@riseup.net>
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
* Update C files to new interface
* Switch CHALLENGE_INPUT_SIZE from a macro to a `const int`.
* Update README with the new public methods
---------
Co-authored-by: Justin Traglia <jtraglia@pm.me>
* Cleanup the Makefile some
* Fix compiler error
* Fix compiler errors in tests
* Fix problems on Linux
* Add test_c_kzg_4844_cov to gitignore
* Add back closing brace for cpp
* Split clean rule into two lines
* Not echo commands when running them
* Allow other compilers to be used
* Update comment
* Only allow clang, actually
* Add test for compute_powers
* Remove extra blank line
* Make it better
* Run make format
* Make compute powers more efficient
* Use explicit memcpy
* Fix bug in my new implementation
* Slightly cleaner implementation
* Revert changes to compute_powers
* Run formatter
* Expose computeKzgProof
* Revert changes to bytes_to/from_bls_field
* Update comments
* Revert changes to bytes_from_bls_field
* Revert change to parameter name
* Add compute_kzg_proof to readme
* Refactor in support of asn's PR
* Clean up a little
* Fix param name doc
* Introduce Bytes32 type
* Update bindings
* Replaces bytes with b to match spec
These might still be needed for the G1 elements even though they're not
needed for blobs now.
Also make FIAT_SHAMIR_PROTOCOL_DOMAIN static to avoid redefinitions.