Commit Graph

6017 Commits

Author SHA1 Message Date
Alex Stokes b7149ef5fa
Update beacon-chain.md
Typo fix in deneb comment
2024-07-08 17:52:06 -06: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
Potuz f97f0b4ef2 use List with limit to hash withdrawals 2024-07-08 15:12:56 -03:00
Potuz 9274a66199 fix Merkle proof generator 2024-07-08 14:36:50 -03:00
Potuz 0e94fc956b Rename changed preset 2024-07-08 14:36:50 -03:00
Potuz b556420e5a linter 2 2024-07-08 14:36:50 -03:00
Potuz 19c6f84562 linter 2024-07-08 14:36:50 -03:00
Potuz 17b7905e5c modify get_blob_sidecars to use nested proof 2024-07-08 14:36:50 -03:00
Potuz 9181e2937f modify get_blob_sidecars to take the commitments 2024-07-08 14:36:49 -03:00
Potuz e93f923bb5 fix typo last_withdrawals_root 2024-07-08 14:36:49 -03:00
Potuz bb7ce4fa6e minor fixes 2024-07-08 14:36:49 -03:00
Hsiao-Wei Wang 2af6e7d22c Minor refactoring 2024-07-08 14:36:49 -03:00
terence 614284c32a Fix p2p to use eip7732 (#14) 2024-07-08 14:36:49 -03:00
Potuz 3d48e72570 Deal with attestations from previous forks 2024-07-08 14:36:49 -03:00
Potuz 53aaf26ba2 Fix python execution 7 2024-07-08 14:36:49 -03:00
Potuz 603cf53fab add fork fixes 2024-07-08 14:36:49 -03:00
Hsiao-Wei Wang b2d6e68e62 Fix and add `EIP7732_FORK_EPOCH` and `EIP7594_FORK_VERSION` 2024-07-08 14:36:49 -03:00
Potuz a11ffb5278 use definitive EIP number 2024-07-08 14:36:49 -03:00
Potuz 181ce5e9dc add type annotation 2024-07-08 14:36:49 -03:00
terence 5013e5724e Fix epbs pre fork (#13) 2024-07-08 14:36:49 -03:00
Potuz d7a199fe09 Fix python execution 3 2024-07-08 14:36:49 -03:00
Potuz 4500eabf8c Fix python execution 2 2024-07-08 14:36:49 -03:00
Potuz 2a43ce54d6 doctoc 2024-07-08 14:36:49 -03:00
Potuz ad8d71dbdb Fix python execution 1 2024-07-08 14:36:49 -03:00
Potuz 4997588793 add fake value to KZG indices 2024-07-08 14:36:49 -03:00
Potuz 752a804db6 use boolean instead of bool in forkchoice 2024-07-08 14:36:49 -03:00
Potuz 95dd081357 codespell 2024-07-08 14:36:49 -03:00
Potuz ed7f17e0bf Add gas_limit to the execution payload header 2024-07-08 14:36:49 -03:00
Potuz 25a0fdc991 doctoc 2024-07-08 14:36:49 -03:00
DanGoron 51e47ff6e4 small typo fixes (#12) 2024-07-08 14:36:49 -03:00
Potuz b7b1de93e9 Verify withdrawals only when present 2024-07-08 14:36:49 -03:00
Potuz a01f124286 modify INTEVALS_PER_SLOT 2024-07-08 14:36:49 -03:00
terence 6e02cb4ea4 Fix epbs consensus spec to be executable (#10)
Fix epbs consensus spec to be executable
2024-07-08 14:36:49 -03:00
Potuz 0d082fdc0e Add comment about attestations and sync committee duties 2024-07-08 14:36:49 -03:00
Potuz 6d6ef7baa4 Fork logic 2024-07-08 14:36:49 -03:00
Potuz cd7dbef16f P2P changes 2024-07-08 14:36:49 -03:00
Potuz 614e14ed8a Honest Builder Guide 2024-07-08 14:36:49 -03:00
Potuz 971c57c8ea Honest validator guide 2024-07-08 14:36:49 -03:00
Potuz 673c75cab3 Forkchoice changes 2024-07-08 14:36:49 -03:00
Potuz 104fbc7372 beacon chain changes 2024-07-08 14:36:49 -03: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
Justin Traglia 7b72cbdfad Fix link to Deneb spec 2024-07-01 18:42:32 -05:00
Justin Traglia 77c371b22a
Replace "updated" with "modified" in Electra spec (#3823) 2024-07-01 15:36:17 -05:00
Justin Traglia 0e03d8c08d Fix beacon-chain.md section header issues 2024-06-28 14:24:49 -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
dapplion f25aac6adf Add MetadataV3 with custody_subnet_count 2024-06-28 15:53:29 +02: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
dapplion 9280cc7be9 Update doctoc 2024-06-26 12:46:16 +02:00
dapplion ded072af40 Make MAX_BLOBS_PER_BLOCK a config parameter 2024-06-25 18:22:56 +02:00
Lion - dapplion fcd905cb3a
Update sync-protocol.md 2024-06-25 10:52:23 +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
Etan Kissling 67a053d6ce
Refer to Altair gindices as that's where they were introduced 2024-06-21 14:39:01 +02:00
Etan Kissling ea04148a0d
Lint 2024-06-21 11:44:33 +02:00
Etan Kissling 2035a9fcad
Update light client specifications for Electra
Electra introduces two changes that affect light client data handling:

1. The `ExecutionPayloadHeader` is extended with new fields.
   This is handled similarly as before with the Deneb fork.

2. The `BeaconState` generalized indices change due to lack of EIP-6493.
   This is handled by making the generalized index be fork dependent via
   a helper function that computes it dynamically. Furthermore, the case
   where pre-Electra light client data is consumed by an Electra based
   `LightClientStore` requires normalizing the shorter proof of the
   pre-Electra data to fit into the Electra data structure by prepending
   a zero hash.
2024-06-21 11:33:52 +02: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
Hsiao-Wei Wang ca6485012f
Merge pull request #3783 from mkalinin/electra-maxeb-preset
Switch the rest of the spec to MAX_EFFECTIVE_BALANCE_ELECTRA
2024-06-14 16:34:24 +08:00
Hsiao-Wei Wang 718aadf263
Fix tests and remove duplicate `_WITHDRAWAL_PREFIX` definition 2024-06-14 15:57:33 +08:00
Mikhail Kalinin aa65fd7824
Apply suggestion from @hwwhww
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2024-06-14 13:26:47 +07: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 cead0f3407
Merge pull request #3768 from etan-status/at-stability
EIP-7549: Append new `committee_bits` field to end of `Attestation`
2024-06-13 22:15:51 +08: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
Justin Traglia 5ace424cd8
`recover_cells_and_kzg_proofs` & matrix refactor (#3788)
* Recover cells and proofs & matrix clean up

* Fix table of contents

* Update reference tests generator

* Update test format

* Remove unused imports

* Fix some minor nits

* Rename MatrixEntry's proof to kzg_proof

* Move RowIndex & ColumnIndex to das-core
2024-06-11 14:52:24 +03:00
Csaba Kiraly 6711acf3e2
clarifying reconstruction and cross-seeding
- when should a node reconstruct
- how to cross-seed for subscribed and unsubscribed topics

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-11 02:31:22 +02:00
Hsiao-Wei Wang e53c10edb0
Merge pull request #3791 from prestonvanloon/rename-executionlayer-objs
Electra: Rename objects with prefix ExecutionLayerXXX
2024-06-10 20:01:20 +08:00
Csaba Kiraly 2ab4f1e12e
get_extended_sample_count: use SAMPLES_PER_SLOT constant
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-10 11:16:06 +02:00
b-wagn ac105f472a update polynomial-commitments-sampling.md -- fix shift_polynomialcoeff 2024-06-06 16:36:03 +02:00
Preston Van Loon 5dec87f90f Update TOC 2024-06-05 15:24:59 -05:00
Preston Van Loon 5910aeed4d Rename ExecutionLayerConsolidationRequest->ConsolidationRequest 2024-06-05 15:12:56 -05:00
Preston Van Loon 2e6c59393f Rename ExecutionLayerWithdrawalRequest->WithdrawalRequest 2024-06-05 15:12:56 -05:00
Hsiao-Wei Wang 3644f360b8
Merge pull request #3757 from mkalinin/receipt-to-request
Rename DepositReceipt to DepositRequest
2024-06-05 14:41:01 +08:00
Hsiao-Wei Wang 12d95da0da
Merge branch 'dev' into pr3757 2024-06-05 00:42:37 +08:00
Hsiao-Wei Wang 4223bc0ae6
Merge branch 'dev' into pr3776 2024-06-05 00:34:22 +08:00
Hsiao-Wei Wang 0de125274c
Merge pull request #3775 from fradamt/EL-consolidations
EL-triggered consolidations
2024-06-04 23:31:12 +08:00
Csaba Kiraly 4c57399887
self-contained get_extended_sample_count
Importing scipy is not preferred. This is a self-contained
version. Eventually an import of math and use of math.comb
makes it simpler.
Solving other formatting issues as well.

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-06-04 09:41:29 +02:00
Hsiao-Wei Wang 143b9e623d
Switch the order of `process_deposit_receipt` and `process_execution_layer_withdrawal_request` 2024-06-04 01:40:41 +08:00
Mikhail Kalinin 3fd125f078
Applied suggestions by @hwwhww
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2024-06-03 14:56:39 +06:00
Mikhail Kalinin a0a23245f0 Fix lint 2024-05-31 22:16:18 +06:00
Mikhail Kalinin 85adbfbc4d Switch spec to MAX_EFFECTIVE_BALANCE_ELECTRA 2024-05-31 15:59:05 +06:00
Csaba Kiraly 436e58e3f8
add get_extended_sample_count helper function
add LossyDAS sample count generation helper function

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-29 14:27:31 +02:00
Csaba Kiraly 5f3beca871
remove LossyDAS naming from spec
While the technique was introduced as LossyDAS, we don't need the name
in the specification itself.

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-29 11:08:52 +02:00
Csaba Kiraly a04cd87c38
fix the (source-view) formatting of the table
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-29 11:04:10 +02:00
Csaba Kiraly 4e1d566c43
improve candidate peer text
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-29 11:01:50 +02:00
Hsiao-Wei Wang 7b4d23c0ba
fix toc 2024-05-28 22:57:52 +08:00
Csaba Kiraly 8d332788b9
clarify the use of LossyDAS
Clarify that what matters is the false positive threshold, allowing
different sampling strategies as protocol compliant behavior.

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-28 13:54:27 +02:00
Csaba Kiraly b848ca6dc7
improved sampling description
- describe sample selection
- describe sample queries

Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2024-05-28 13:54:27 +02:00
Guillaume Ballet 8737e69c21
use execution_witness_root in header 2024-05-28 10:39:35 +02:00
Hsiao-Wei Wang 744ae2e687
Add EIP-6800 linter checks.
Fix the lint errors.
Remove custom type `StateDiff` and then use `List[StemStateDiff, MAX_STEMS]` directly in `ExecutionWitness`.
2024-05-28 16:24:11 +08:00
Hsiao-Wei Wang fd246d8ebf
Merge branch 'dev' into pr3230 2024-05-28 12:55:33 +08:00
Hsiao-Wei Wang 071f0a3097
Merge pull request #3769 from ethDreamer/fix_compute_proposer_index
Electra: Properly Calculate Proposer Probabilities
2024-05-28 11:40:50 +08:00
Guillaume Ballet 0fd49c1a32 fix spelling error 2024-05-27 14:10:58 +02:00
Guillaume Ballet 7fbbb252d8 rebase on top of deneb 2024-05-27 12:46:30 +02:00
Guillaume Ballet 5c13f5c651
fix depth+extension serialization type
Co-authored-by: g11tech <develop@g11tech.io>
2024-05-27 11:53:38 +02:00
fradamt 69ee35d4e3 handle top-ups to exiting/exited validators 2024-05-22 12:31:22 +02:00
fradamt 96db63ea29 doctoc 2024-05-22 10:11:39 +02:00
fradamt 6a731e9115 fix lint 2024-05-22 10:03:03 +02:00
fradamt f0ef76ada1 minor fixes 2024-05-21 23:03:34 +02:00
fradamt 6b6936836a Revert "minor fixes, doctoc"
This reverts commit dc2a2bd85a.
2024-05-21 22:54:25 +02:00
fradamt 5998e74447 typos. electra tests passing 2024-05-21 22:30:14 +02:00
fradamt dc2a2bd85a minor fixes, doctoc 2024-05-21 22:30:14 +02:00
fradamt 7c4b32a717 renaming consolidations to consolidation_requests 2024-05-21 22:29:30 +02:00
fradamt 901a2491b4 fix typo 2024-05-21 22:15:33 +02:00
fradamt e030f2cd60 Small fixes
Co-authored-by: Mikhail Kalinin <kalinin128@gmail.com>
2024-05-21 22:15:33 +02:00
fradamt 8a6ca1c568 fix consolidation churn limit check 2024-05-21 22:15:33 +02:00
fradamt 74eaf57668 add consolidations_root where needed 2024-05-21 22:15:33 +02:00
fradamt 204b39dd74 ensure that target has execution credentials 2024-05-21 22:15:33 +02:00
fradamt 1292bd9375 move to EL consolidations 2024-05-21 22:15:33 +02:00
Manu NALEPA 64b93c9361
Fix table. 2024-05-17 17:47:38 +03:00
Manu NALEPA f7bb8aab1a
EIP-7594 - Update ENR record
Proposal for https://github.com/ethereum/consensus-specs/issues/3744
2024-05-17 17:31:08 +03:00
Mikhail Kalinin 32b441d381
Fix lint 2 2024-05-16 17:03:10 +03:00
Mikhail Kalinin 222e980b7e
Fix lint 2024-05-16 16:55:23 +03:00
Mark Mackey 74be5b2436 Electra: Properly Calculate Proposer Probabilities 2024-05-16 15:29:32 +03:00
Etan Kissling 8bf606884b
EIP-7549: Append new `committee_bits` field to end of `Attestation`
Introducing new fields in the middle of an existing `Container`
pointlessly breaks merkleization of all subsequent fields.
In the case of `committee_bits`, it is also misleading, as
`signature` only covers `data` inside `Attestation`.
2024-05-16 10:59:51 +03:00
George Kadianakis fdeff744ff
EIP-7594: Add a missing check and a missing test vector (#3765) 2024-05-14 17:18:14 +03:00
Nishant Das 8f73a47423
Update p2p-interface.md 2024-05-09 16:14:52 +08:00
Nishant Das b9befda08b
Update p2p-interface.md 2024-05-09 16:03:55 +08:00
Hsiao-Wei Wang 812ac2ce8f
Merge pull request #3759 from jtraglia/ext-aggregate-and-proof
Add electra version of AggregateAndProof
2024-05-08 20:25:06 +08:00
Justin Traglia 93c043a647 Revert moving IndexedAttestation
I'll do this in a separate PR.
2024-05-07 19:14:48 -05:00
Justin Traglia f3d0a0e89b Move containers to validator.md 2024-05-07 19:13:24 -05:00
Justin Traglia 8aed03767a Change "new" to "modified" 2024-05-07 16:37:23 -05:00
Justin Traglia 0da03ab5ac Update TOC 2024-05-07 16:33:06 -05:00
Justin Traglia 99ccfe0163 Add electra version of AggregateAndProof 2024-05-07 16:29:49 -05:00
Mikhail Kalinin d8c486bcc5 Rename DepositReceipt to DepositRequest 2024-05-07 23:34:03 +06:00
Navie Chan 191833bd0a index from AttestationData 2024-05-07 19:00:55 +03:00
Hsiao-Wei Wang 313a64e9c1
Merge pull request #3748 from ethereum/fix-get_custody_columns
Fix `get_custody_columns`
2024-05-07 22:43:46 +08:00
Hsiao-Wei Wang 9ffd08a9dc
The return values MUST be sent in `(slot, column_index)` order. 2024-05-07 20:28:34 +08:00
Hsiao-Wei Wang fdad206f3c
Apply @dankrad's suggestion 2024-05-07 20:26:56 +08:00
Hsiao-Wei Wang 950136c50d
Apply suggestions from code review
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2024-05-07 18:30:28 +08:00
Hsiao-Wei Wang 34756a81c6
Add `DataColumnSidecarsByRange` v1 Req/Resp 2024-05-06 19:11:23 +08:00
Hsiao-Wei Wang 9c1acbb5e5
Fix `get_custody_columns` 2024-05-06 17:25:47 +08:00
George Kadianakis 1ef75e0875 Be consistent between ids and indices 2024-05-03 19:00:51 +03:00
Kevaundray Wedderburn 5699eedd4d pad column_indices 2024-05-03 16:43:11 +01:00