Justin Traglia
03b439ef2f
Update java bindings ( #144 )
2023-02-20 14:57:27 -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
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
Justin Traglia
471245001d
Generate coverage report ( #106 )
...
* Add check for test coverage
* Add coverage html report
* Install llvm
* Save coverage report before doing check
* Update coverate report path
* Remove coverage check
* Remove coverage report in make clean
* Remove extra CFLAG
2023-02-01 07:58:52 +00:00
Justin Traglia
eb17071bf3
Add some tests for reverse_bits ( #105 )
2023-01-31 15:51:35 +00:00
Justin Traglia
d3b061f84b
Add bytes32_from_hex helper function ( #103 )
2023-01-31 15:48:41 +00:00
Justin Traglia
ea73c3f1ca
Add some validate_kzg_g1 tests ( #102 )
2023-01-31 11:26:25 +00:00
George Kadianakis
9f443bc5aa
test_compute_kzg_proof() now also verifies the KZG proof ( #101 )
...
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2023-01-31 08:33:02 +00:00
Justin Traglia
afd9bb78f0
Add some blob_to_kzg_commitment tests ( #100 )
...
* Add some basic blob_to_kzg_commitment tests
* Rename field_element var
* Rephrase comment
* At point_at_infinity test case
* Update comments
* Use more descriptive test names
* Update comments
* Add sections
* Add "consistent_commitment" test
* Use Bytes* types
2023-01-31 07:36:02 +00:00
Justin Traglia
8d923c3272
Add ckzg C tests workflow ( #98 )
2023-01-30 16:37:04 +00:00
Justin Traglia
3340843c91
Make get_rand_blob return a full blob ( #99 )
...
* Fix a problem in get_rand_blob
* Use bytes field instead of new var
2023-01-30 16:36:18 +00:00
Justin Traglia
05bd73bca5
Clean up the test file a little ( #97 )
2023-01-30 13:57:26 +00:00
Ramana Kumar
7f1fb88da9
Remove b modifier
2023-01-30 13:40:54 +00:00
George Kadianakis
98aa54a996
Add a basic unittest framework + a compute KZG proof test ( #96 )
...
* Add tinytest.h testing framework
from https://github.com/joewalnes/tinytest/
* Add a basic compute_kzg_proof() test
2023-01-30 13:40:12 +00:00
Justin Traglia
e4f280f17f
Add compute_kzg_proof to java bindings ( #94 )
2023-01-27 15:16:41 +00:00
Justin Traglia
9076280cd2
Add compute_kzg_proof to nodejs bindings ( #92 )
2023-01-27 15:15:17 +00:00
Justin Traglia
60ead4ee49
Add compute_kzg_proof to rust bindings ( #91 )
2023-01-27 15:14:13 +00:00
Justin Traglia
3ec2e9cdc2
Update go get command in instructions ( #90 )
2023-01-27 10:30:01 +00:00
George Kadianakis
d46544dd2e
General code improvements ( #87 )
...
* Better memory management in compute_challenges()
* Forgotten retval check in compute_aggregated_poly_...()
* General niceties around the code
2023-01-26 22:43:17 +00:00
Justin Traglia
877e6a43d3
Move go.mod & go.sum to repo root ( #88 )
...
* Move go.mod & go.sum to repo root
* Add note to README
2023-01-26 22:42:56 +00:00
Ramana Kumar
363c7d7593
Improve alignments in docstring comments
2023-01-26 17:13:13 +00:00
Justin Traglia
71dd9574d6
Add go bindings ( #77 )
...
* Add go bindings
* Use Bytes32 type
* Update blst package
* Add binding for compute_kzg_proof
* Use bytes-only input (will fail)
* Fix go bindings tests
* Use better blobs for benchmarks
* Move rand* funcs to helpers & add comment
* Add headers check
2023-01-26 17:04:24 +00:00
Justin Traglia
03b90ef63f
Use Bytes48 for commitments/proofs ( #86 )
...
* Start to use bytes48 type
* Update java bindings
* Update variable names
* Update csharp bindings
* Update node.js bindings
* Update python bindings
* Fix mistake in python bindings
* Add new functions
* Fix nit in java bindings
* Update variable names in java bindings
* Compare to point at infinity
* Update bytes_to_bls_field doc
* Add todo
* Do key validation
* Remove bytes_to_g1
* Fix bug & add remark
* Fix memcmp mistake
* Fix nit in nodejs bindings
* Fix another nit
* Update nodejs parameter names
* Remove to_proof() and to_commitment()
* Fix bug
2023-01-26 14:53:30 +00:00
Justin Traglia
0a18868475
Upgrade blst & remove sha256 patch ( #85 )
2023-01-25 20:07:15 +00:00
Justin Traglia
8907fbcfe2
Expose `compute_kzg_proof` ( #80 )
...
* 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
2023-01-24 18:23:42 +00:00
Justin Traglia
d849e626ae
Use downward gotos in g1_lincomb ( #83 )
...
* Use downward gotos in g1_lincomb
* Do it asn's way
2023-01-24 18:15:16 +00:00