Commit Graph

260 Commits

Author SHA1 Message Date
Ramana Kumar 682ffb59d5
Bring DllImport types and ckzg.c into alignment 2022-10-10 23:28:29 +01:00
Ramana Kumar 5c90a4e5a0
Change evaluate_polynomial_in_evaluation_form interface 2022-10-10 23:21:05 +01:00
Ramana Kumar dd242cd93c
Merge pull request #1 from flcl42/add-csharp-side-impls-as-tests
Add C# related files, rename dir, add impls
2022-10-10 23:11:06 +01:00
Alexey Osipov 9e98b13a2a Add C# related files, rename dir, add impls 2022-10-11 01:00:07 +03:00
Ramana Kumar 620086ca4d
Remove vector_lincomb_indirect 2022-10-10 22:39:38 +01:00
Ramana Kumar 0797b932c5
Implement vector_lincomb wrapper 2022-10-10 21:56:57 +01:00
Ramana Kumar af4832c585
Update C# interface
not fully implemented or tested yet
2022-10-10 20:12:31 +01:00
Ramana Kumar dc152f4238
Forgot to pass polynomial length
Got lucky that the tests worked anyway with a random uninitialised n
before.
2022-10-07 07:28:50 +01:00
Ramana Kumar 0b5db6413e
Ensure evaluation test success is non-trivial 2022-10-07 00:52:31 +01:00
Ramana Kumar 61a43c95a2
Add evaluate_polynomial_in_evaluation_form to C# 2022-10-07 00:45:42 +01:00
Ramana Kumar 6083d09d29
Add bytes_from_bls_field to interface 2022-10-07 00:28:20 +01:00
Ramana Kumar d453296005
Add some verify proof tests in csharp
The numbers here are based on the Python tests
2022-10-05 23:35:43 +01:00
Ramana Kumar 534533061a
Fix free_trusted_setup 2022-10-05 21:33:16 +01:00
Ramana Kumar ba44d9e35c
Remove swig 2022-10-05 20:11:35 +01:00
Ramana Kumar d50adb8086
Add verify_kzg_proof and load_trusted_setup for C# 2022-10-05 20:04:35 +01:00
Ramana Kumar 989797c254
Add error checking to bytes_to_g1 2022-10-05 20:04:04 +01:00
Ramana Kumar f0f72d3fd1
Add bytes_to_g1 to the interface 2022-10-05 19:33:27 +01:00
Ramana Kumar b3d550d1a3
Add some more to the csharp interface 2022-10-04 22:40:18 +01:00
Ramana Kumar f5e95c497c
Start investigating swigless csharp 2022-10-04 19:45:12 +01:00
Ramana Kumar 9512abbcfc
Remove debugging print 2022-10-04 07:47:31 +01:00
Ramana Kumar 97fc4762d6
Add test that verification fails at wrong value 2022-10-04 07:47:13 +01:00
Ramana Kumar e60b5c2d77
Run both tests by default 2022-10-04 07:42:42 +01:00
Ramana Kumar a66f39f2a2
Remove python swig stuff 2022-10-04 07:40:51 +01:00
Ramana Kumar f3e7534662
Fix bug in compute_kzg_proof 2022-10-04 07:35:52 +01:00
Dankrad Feist 5195d9be55
Add pyecc test for proof 2022-10-04 00:50:05 +01:00
Dankrad Feist 2e435a7e26
Add py_ecc tests to min-bindings 2022-10-04 00:41:24 +01:00
Ramana Kumar 67804099bc
Add a simple test of polynomial evaluation
The values are taken from one of the simple tests in bindings/python
2022-10-03 22:04:55 +01:00
Ramana Kumar 48634ea975
Delete unused variable 2022-10-03 20:54:31 +01:00
Ramana Kumar 30864e643f
Remove stride from eval_poly_l
To match b611c51874
2022-10-03 20:49:45 +01:00
Dankrad Feist b611c51874
Fix some errors with rbo 2022-10-03 19:35:34 +01:00
Ramana Kumar 4f7cf29e5f
Compute the commitment another way to test 2022-10-03 07:51:53 +01:00
Ramana Kumar 3c5312cbb3
Remove unnecessary function from interface 2022-10-02 23:34:57 +01:00
Ramana Kumar 040df7d520
Fix incorrect treatment of returning boolean
This fixes the free: invalid pointer problem.
2022-10-02 22:12:08 +01:00
Ramana Kumar cdbe1b7159
Be more careful with Py_DECREFing numbers 2022-10-02 19:32:26 +01:00
Ramana Kumar ab7dfe0c40
Make some tweaks, mainly memcpy structs
instead of hoping that struct assignment is sufficient

still haven't found the bug
2022-10-02 18:36:53 +01:00
Ramana Kumar b3f24f4aa9
Add proof verification, but test currently fails 2022-10-02 14:01:33 +01:00
Ramana Kumar 0ed8ef7b79
Compute kzg proof in swigless python 2022-10-02 13:21:13 +01:00
Ramana Kumar c6c4f7d5f6
Wrap g1_lincomb 2022-10-02 12:59:54 +01:00
Ramana Kumar 69a42a085a
Compute aggregated_poly in swigless python 2022-10-02 12:40:36 +01:00
Ramana Kumar aab3df643b
Use pointers for scalars too 2022-10-02 12:09:01 +01:00
Ramana Kumar 2281cce711
Use array of pointers for vector_lincomb
This seems more likely to avoid copying field elements when interfacing
from high-level languages (we still have to store the pointers though).

If this is the right move, the same could be done for
blob_to_kzg_commitment, and maybe others that read sequences.
2022-10-02 11:29:23 +01:00
Ramana Kumar b284636afd
Remove 4844 version from src (use min-src) 2022-10-02 11:12:38 +01:00
Ramana Kumar fe4dfcc0eb
Implement swigless compute_powers 2022-10-02 09:47:43 +01:00
Ramana Kumar 7daaf55bd7
Implement more swigless interface 2022-10-02 09:28:45 +01:00
Ramana Kumar aa60016dd2
Start on Python interface without SWIG 2022-10-02 00:52:12 +01:00
Ramana Kumar 4789a830e9
Forgot to update Python module name 2022-10-01 21:41:05 +01:00
Ramana Kumar 38acde184a
Suffix swig stuff and update gitignore 2022-10-01 21:39:15 +01:00
Dankrad Feist e3499ff145
Add ckzg.cs to deps 2022-10-01 19:34:35 +01:00
Dankrad Feist 7c06987348
Rename library to conform to mono expectations 2022-10-01 18:58:36 +01:00
Ramana Kumar d52981ef6d
Trying and failing to interface to vector_lincomb 2022-10-01 18:19:39 +01:00