Commit Graph

780 Commits

Author SHA1 Message Date
Justin Traglia 54ab82c93b
Update nodejs bindings to support YAML ref tests (#167)
* Update nodejs bindings to support YAML ref tests

* Remove c-kzg from deps

* Fix test checks

* Add return statements in error checks

* Fix uint8array comparisons

* Revert test_dir to original value
2023-03-06 12:08:59 +02:00
Justin Traglia aaaacf7432
Update go bindings to support YAML ref tests (#163)
* Update go bindings to support YAML reference tests

* Remove refs to inputValue/claimedValue

* Do not panic if given different length lists
2023-03-06 12:04:29 +02:00
Justin Traglia 572507ce77
Allow invalid length inputs in rust tests (#171)
* Allow bad input values in rust tests

* Clean up a little

* Re-enable feature checks & consolidate

* Use more pattern matching

* Consolidate imports

* Split some long lines into shorter ones

* Clean up test loops

* Simplify get_output() for some funcs
2023-03-06 11:52:36 +02:00
Justin Traglia 8ade71a137
Update python bindings to support YAML ref tests (#161) 2023-03-04 11:24:03 -07:00
Justin Traglia 3e5f562f05
Update rust bindings to support YAML ref tests (#164) 2023-03-03 16:01:56 -07:00
Justin Traglia 895d0f8627
Replace old tests with new yaml tests (#169) 2023-03-03 11:28:48 +02:00
George Kadianakis 53b38face0
Fix little-endian serialization in compute_challenge() (#168) 2023-03-02 11:35:37 -07:00
Justin Traglia ae0aeaf33d
Remove duplicate p1_on_curve check (#107)
Co-authored-by: George Kadianakis <desnacked@riseup.net>
2023-03-01 12:52:44 +02:00
g11tech 021674111a
Update the node bindings version to the latest published (#162) 2023-03-01 12:39:37 +02:00
George Kadianakis 94198b5c18
Refactor use of MSM around the base code (#159)
* Separate naive MSM and fast MSM into separate functions

* Use naive MSM in batch verify, and fast MSM when points are trusted
2023-02-24 17:38:30 +02:00
Justin Traglia 6b2ee20102
Add bindings to readme (#154)
* Add bindings section to readme

* Reorganize a little bit

* Remove extra blank lines
2023-02-23 17:53:08 +02:00
Justin Traglia 1d3558cec2
Update rust bindings (#143)
* Update rust bindings

* Remove old test vectors

* Add #[must_use] in C_KZG_RET to avoid future missing retval checks

* Replace expect with unwrap

* Fix generate_random_commitment()

* Turn some camels to snakes

* Capitalize some consts

* Improve a bench loop

* Kill a useless extern

---------

Co-authored-by: George Kadianakis <desnacked@riseup.net>
2023-02-22 18:33:15 +02:00
George Kadianakis d41a3b0060
Merge pull request #147 from jtraglia/update-nodejs-bindings
Update nodejs bindings
2023-02-22 18:12:47 +02:00
Justin Traglia b34cc3ce1e Add missing exception pending checks 2023-02-22 09:39:16 -06:00
Justin Traglia 0e78319a44 Free allocations in success case 2023-02-22 09:36:32 -06:00
Justin Traglia 4a77aeff26 Add explicit type check 2023-02-22 09:10:09 -06:00
Stefan Bratanov 2e55967455
[Java binding] Validation of loadTrustedSetup parameters (#152) 2023-02-22 08:56:49 -06:00
dankrad e171cb92ff
Add more unit tests (#137) 2023-02-22 08:42:57 -06:00
Justin Traglia d5bd326877 Update test names 2023-02-21 14:22:44 -06:00
Justin Traglia b04c35437f
Fix the position dependent test (#151) 2023-02-21 18:19:50 +00:00
Justin Traglia 0e6e23de65
Update csharp bindings (#146) 2023-02-21 09:57:25 -06:00
Justin Traglia 03b439ef2f
Update java bindings (#144) 2023-02-20 14:57:27 -06:00
Justin Traglia 9be420c0f1
Merge branch 'ethereum:main' into update-nodejs-bindings 2023-02-20 10:22:50 -06:00
Justin Traglia 5c33098d6f
Add test files (#141) 2023-02-20 16:04:10 +00:00
Justin Traglia a231d5354b
Update go bindings (#142)
* Update go bindings

* Fix some nits
2023-02-20 16:01:31 +00:00
Justin Traglia daa5f79fe3
Update python bindings (#145) 2023-02-20 16:00:13 +00:00
George Kadianakis 46d529cf00
Interface changes to free the blobs (#123)
* 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>
2023-02-20 15:52:12 +00:00
Dmitrii Shmatko f87eee57d3
Fix getting SEGFAULT in Java with incorrect parameters (#148)
* Java bindings: Fix SEGFAULT on incorrect parameters/wrong file

* Prettify allocate KZGSettings
2023-02-20 12:02:34 +00:00
Justin Traglia 21b3139dc8 Update nodejs bindings 2023-02-18 15:49:52 -06:00
Stefan Bratanov 9a764de619
Add spotless to the java bindings (#136)
* Add spotless to the java bindings

* Use check task which includes test + all verification
2023-02-16 11:26:26 +00:00
Fabio Di Fabio 8c3dc2df41
Add method to load trusted setup from a resource (#135)
* Add method to load trusted setup from a resource
* Do not try to reuse the same temp dir
* Fix test, loading the correct trusted setup for the preset
2023-02-15 12:18:43 -06:00
Justin Traglia e93110903e
Clean up the testing file a bit (#134) 2023-02-14 21:17:55 +00:00
Justin Traglia 8aa78231f2
Check UInt8Array lengths (#126) 2023-02-14 15:11:10 -06:00
Justin Traglia 128dd3eb1f
Disable compiler optimizations for tests (#133) 2023-02-13 18:20:21 +00:00
Justin Traglia 1493f2bf2f
Fix rust bindings benchmarks (#132) 2023-02-13 07:14:09 +00:00
Justin Traglia ef3c78ee9b
Add c_kzg_calloc function (#130)
* Add c_kzg_calloc function

* Update .gitignore & remove now unnecessary checks

* Add some tests

* Free memory in tests
2023-02-12 21:29:29 +00:00
Justin Traglia 44fe79fd42
Run static analysis in CI (#129)
* Run static analysis in CI

* Remove analysis-report in make clean

* Add remark

* Remove the memory helper functions

* Revert "Remove the memory helper functions"

This reverts commit 364234aea02cca38ed40a5bce1bbc8f8eb02aee2.

* Remove swap file
2023-02-11 16:03:35 +00:00
Justin Traglia fcea0faff6
Fix some minor nits (#128)
* Fix some minor nits

* Remove comment padding in makefile
2023-02-11 09:10:03 +00:00
Justin Traglia 5c1128e380
Add profiling (#124)
* Start to add profiling

* Add include flags for macos

* Add profiling funcs for the other funcs

* Add profiling readme

* Move sentence

* Add warning section

* Make run_profiler phony

* Delete extra empty lines

* Add line about box size

* No more dropped nodes/edges

* Remove function focus

* Add sha256 benchmark

* Benchmark sha256 with different sizes

* Clean things up a little
2023-02-10 20:33:32 +00:00
Justin Traglia 5a3e294beb
Update go get instructions (#125) 2023-02-10 08:01:30 +00:00
Stefan Bratanov 5cfbc34135
Add java benchmarking for `compute_kzg_proof` (#122) 2023-02-08 17:36:40 +00:00
Justin Traglia dc28b03f9d
Cleanup the Makefile (#119)
* 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
2023-02-08 17:35:33 +00:00
Justin Traglia af333c2706
Change nbits from 256 to 255 for Pippenger's method (#121) 2023-02-08 07:13:22 +00:00
Justin Traglia fd029a7d00
Fix python bindings on macOS (#117)
* Fix python bindings on macOS

* Update workflow

* Remove unnecessary Makefile vars

* Add src dir to include dirs

* Fix phony
2023-02-07 22:13:54 +00:00
Justin Traglia e487800529
Format the main C file (#116) 2023-02-07 10:35:33 +00:00
Daniel Coffman c6fa137cd4
Verify blobs count matches commitments count (#113) 2023-02-01 20:56:03 +00:00
Justin Traglia 97c46a8532
Add test for compute_powers (#110)
* 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
2023-02-01 19:33:22 +00:00
George Kadianakis e36c11dfe2
Fix compute_kzg_proof_impl() when `z` is inside the domain (#111)
* Fix compute_kzg_proof_impl() when `z` is inside the domain

* Satisfy linter D:
2023-02-01 19:32:39 +00:00
Justin Traglia e5fa8c7ee1
Simplify log_2_byte & add test (#109) 2023-02-01 17:16:20 +00:00
Justin Traglia 1e7353c435
Run clang-format on test code (#108)
* Run clang-format on test code

* Fix format test

* Don't pack arguments

* Use more descriptive variable names
2023-02-01 14:48:29 +00:00