Commit Graph

164 Commits

Author SHA1 Message Date
Barnabas Busa a5990f99ac
EIP-7594: PeerDAS explicit csc integer size (#3897)
* EIP-7594: PeerDAS explicit csc integer size

* add spec test for csc int size

* import uint8

* make linter happy

* add spec

* Update p2p-interface.md

* Update specs/_features/eip7594/das-core.md

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>

* revert metadata name

* Update specs/_features/eip7594/das-core.md

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>

* update tests

* make linter happy

* Make `DATA_COLUMN_SIDECAR_SUBNET_COUNT` in uint8

* add `int` casting for bypassing remerkeable type conversion

---------

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2024-08-29 02:43:34 +08:00
Justin Traglia 4eee3b0c3b Remove matrix specific configuration value
This also removes references to the "extended matrix" in favor of just "matrix"
which I think is better. It's not an extended matrix, it's a matrix of extended
blobs. Technically it's just a matrix of cells/proofs.
2024-08-14 20:19:50 -05:00
Alex Stokes 13ac373a2c
Merge pull request #3870 from fradamt/no-peer-sampling
Spec without peer sampling
2024-08-12 15:04:41 -06:00
fradamt 04ee34c504 revert to deneb-style fork-choice (is_data_available in on_block) 2024-08-08 10:01:20 +02:00
Justin Traglia 54093964c9 Fix nits in eip7594 p2p-interface spec 2024-08-07 21:22:00 -05:00
Justin Traglia 80b94ba058
Fix bad suggestion 2024-08-07 15:24:48 -05:00
fradamt 06ead3aa0d
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-08-07 22:13:41 +02:00
fradamt 7a6770a732 fix headers
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-08-07 16:52:06 +02:00
fradamt 111123723a fix function comment 2024-08-07 15:07:37 +02:00
fradamt 376ab85406 Split peer sampling spec from das-core.md 2024-08-07 14:52:36 +02:00
fradamt 4bd2f924de custody-based fork-choice 2024-08-07 11:28:16 +02:00
Hsiao-Wei Wang 572ca9e032
Merge pull request #3821 from dapplion/csc
Add MetadataV3 with custody_subnet_count
2024-08-06 19:43:38 +09:00
Benedikt Wagner ef3c9dc84d
Remove dead link to no longer existing public method. 2024-08-02 08:35:02 +02:00
b-wagn 225c486183 some punctuation 2024-07-31 17:30:36 +02:00
b-wagn 85a42cd7bf improve comments in recovery 2024-07-31 11:56:39 +02:00
kevaundray 233129122b
Replace `recover_data` with `recover_polynomialcoeff` (#3820)
* chore: remove recover_data

* make it look closer to final code

* Improve comments

* Fix lint issue

* Fix tests & clean things up a bit

* Replace a couple uses of "monomial" with "coefficient"

* Revert "Replace a couple uses of "monomial" with "coefficient""

This reverts commit c9a1a757d1a09190eee78767b3d36b2a84066e42.

* Only replace "monomial" with "coefficient"

---------

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
Co-authored-by: Justin Traglia <jtraglia@pm.me>
2024-07-17 16:23:59 +03:00
George Kadianakis bb8f3caafc
Merge pull request #3836 from jtraglia/columns-cells-and-proofs
Update get_data_column_sidecars to take cells/proofs
2024-07-16 18:25:24 +03:00
Justin Traglia 5961e26931
Remove unnecessary comment 2024-07-15 15:09:01 -05:00
Justin Traglia 252b852a61
Rename column_index to cell_index in KZG spec (#3841)
* Rename column_index to cell_index in KZG spec

* Fix table of contents

* Replace list(set()) with set()

* Change coset_evals to cell_indices in some places

* Remove punctuation in table description

* Remove "row" from comments & improve docstring

* Replace unique with deduplicated
2024-07-15 19:41:33 +03:00
dapplion db717702a8 Move to peerdas eip 2024-07-11 14:07:16 +02:00
George Kadianakis dc5f74da0e
Merge pull request #3830 from jtraglia/remove-verify-cell-kzg-proof
Remove `verify_cell_kzg_proof` (non-batch)
2024-07-10 19:49:58 +03:00
Justin Traglia 9a9fa965b0
In batch cell verification, take commitment for each cell (#3834) 2024-07-10 10:41:37 -05:00
Justin Traglia c402414489
Merge branch 'dev' into remove-verify-cell-kzg-proof 2024-07-09 11:32:28 -05:00
Justin Traglia 8da90b2702 Fix linter issues 2024-07-08 14:20:45 -05:00
Justin Traglia 1dbb68d3d7 Update get_data_column_sidecars to take cells/proofs 2024-07-08 14:07:53 -05:00
Justin Traglia b9e7b031b5 Update algorithm & remove check 2024-07-08 09:00:14 -05:00
Justin Traglia 228752c0d9 In batch cell verification, check if there are zero cells 2024-07-05 15:31:07 -05:00
Justin Traglia 0daa2acdff Remove verify_kzg_proof_multi_impl too 2024-07-02 17:05:40 -05:00
Justin Traglia c078a97f0c Remove verify_cell_kzg_proof (non-batch) 2024-07-02 15:38:15 -05:00
Benedikt Wagner 83da3807ab
EIP7594: Do universal verification in verify_cell_kzg_proof_batch() (#3812)
* restructure verify_cell_kzg_proof_batch a bit

* first draft of universal verification equation

* add one more empty line to make linter happy

* make linter happy

* more testcases for verify_cell_kzg_proof_batch

* verify_cell_kzg_proof_batch: derive coefficient via hash

* rename verify_cell_kzg_proof_batch_challenge -> compute_verify_cell_kzg_proof_batch_challenge

* verify_cell_kzg_proof_batch: editorial + some refactoring

* Improve documentation and variable naming.

* remove k_i from code and doc

---------

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-06-28 18:02:20 +03:00
kevaundray a3a6c916b2
Remove proof parameter from `recover_cells_and_kzg_proofs` (#3819) 2024-06-27 14:17:14 -05:00
Hsiao-Wei Wang 0a49572799
Merge pull request #3782 from cskiraly/peer-das-sampling
PeerDAS sampling clarifications
2024-06-27 19:27:57 +08:00
Hsiao-Wei Wang 258c2c9020
Merge pull request #3794 from cskiraly/peer-das-reconstruction
EIP-7594: clarifying reconstruction and cross-seeding
2024-06-27 18:58:23 +08:00
Csaba Kiraly 1ad381dccb
adding get_extended_sample_count docsstring
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-27 10:28:21 +02:00
Csaba Kiraly 78b583d8b0
clarify use of get_extended_sample_count
Here we assume uniform random selection without replacement.
If other methods are used, the target false positive threshold
is the main rule to follow.

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-27 09:48:32 +02:00
Csaba Kiraly 17dfb9ae57
fix get_extended_sample_count proc signature
Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>
2024-06-27 09:30:39 +02:00
Csaba Kiraly 4539265c55
moving part of text in custody section
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-25 10:36:53 +02:00
Hsiao-Wei Wang 1f87bbeac0
Merge branch 'dev' into pr3782 2024-06-25 16:21:00 +08:00
Hsiao-Wei Wang beedf852cb
Revert division change and add comments 2024-06-25 16:15:16 +08:00
Hsiao-Wei Wang fb020456cb
Add `get_extended_sample_count` unit tests 2024-06-19 02:18:29 +08:00
Hsiao-Wei Wang 483a286ba5
Remove `assert len(missing_cell_indices) != 0` check 2024-06-14 23:57:33 +08:00
Benedikt Wagner 77eac20df6
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2024-06-13 17:20:04 +02:00
Benedikt Wagner 1c675ae4a1
Update polynomial-commitments-sampling.md - Fix dead link 2024-06-13 16:30:05 +02:00
Hsiao-Wei Wang 43d96cff3f
Merge pull request #3772 from nalepae/patch-3
EIP-7594 - Update ENR record
2024-06-12 23:16:04 +08:00
kevaundray 6efab19ad0
chore: Refactor cell recovery code (#3781)
* multi:

- Remove shift_polynomial_coeff
- Remove recover_shifted_data
- Remove recover_original_data
- Move `zero_poly_eval_brp ` under sanity check comment as its only used for sanity checking

* chore: remove sanity check -- this was doing a wasteful `compute_root_of_unity` operation

* chore: add previous sanity check as a unit test

* chore: copy values python was taking a reference, so it passes in our regular codepaths but not in isolated test

* chore: add coset_fft test

* Update specs/_features/eip7594/polynomial-commitments-sampling.md

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>

* Update specs/_features/eip7594/polynomial-commitments-sampling.md

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>

* chore: linter

* chore: asn (switch to bls_modular_inverse)

* chore: (ben) rename func to test_construct_vanishing_polynomial

* chore: (ben) rename `extended_evaluations_coeffs` to `extended_evaluation_times_zero_coeffs`

* chore: compute `roots_of_unity_extended` in recover_data method

* chore: add more comments explaining whats happening in recover_data

* chore: compute_zero_poly_coeff in recover_data

* chore: make lint

* chore: add doc comment to coset_fft_field

* chore: (ben) add code to generate the vanishing polynomial when all cells are missing

* chore: remove handling of edge case when constructing a vanishing polynomial

* chore: rename H(x) to Q_3(x)

* chore: remove trailing whitespace

* chore: add whitespace between comments

* chore: (asn) add assert that num missing cells is not 0

* chore: (justin) address comments

* chore: merge resolution

* chore: fixup remaining IDs -> indices

* chore: use indice nomenclature in tests

---------

Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-06-11 20:26:19 +03:00
Justin Traglia 93dfcdaf4c Remove compute_cells from list of public methods 2024-06-11 19:17:46 +03:00
George Kadianakis 10bac07b39 Remove compute_cells method 2024-06-11 19:17:43 +03:00
George Kadianakis 7b7ada7d46
Merge pull request #3797 from jtraglia/rename-cellid-to-cellindex
Rename `CellID` to `CellIndex`
2024-06-11 18:45:32 +03:00
Benedikt Wagner c5e9c3cb4e
Add public methods section in KZG spec (#3795) 2024-06-11 07:43:40 -05:00
Justin Traglia d137553f96 Rename CellID to CellIndex 2024-06-11 07:41:52 -05:00