Commit Graph

6028 Commits

Author SHA1 Message Date
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
Mikhail Kalinin e0ee2808d8
Merge pull request #3740 from rkapka/get-committee-indices-typo
EIP-7549: Fix typo in `get_committee_indices`
2024-05-02 17:48:42 +06:00
rkapka c4e8dc23f4 Fix typo in `get_committee_indices` 2024-05-02 16:54:17 +09:00
kevaundray e7b49dc670
chore: Add type casts reducing the diff for #3697 (#3734) 2024-04-29 08:14:55 -05:00
Hsiao-Wei Wang a4e04ebf64
Misc fix 2024-04-27 12:11:29 +08:00
Hsiao-Wei Wang b625daf421
Merge pull request #3707 from terencechain/patch-145
Minor comment on `ExecutionLayerWithdrawalRequest`
2024-04-27 01:05:03 +08:00
Justin Traglia b4188829b3 Rename compute_cells_and_proofs to compute_cells_and_kzg_proofs 2024-04-25 21:57:22 -05:00
Justin Traglia 4f66521208 Fix parameter indentations 2024-04-25 17:34:10 -05:00
Justin Traglia ac1ce3b3f0 Rename verify_cell_proof to verify_cell_kzg_proof 2024-04-25 17:31:22 -05:00
Hsiao-Wei Wang e1d71216bb
Merge pull request #3715 from ethereum/das-test-vectors
Make `get_custody_columns` return sorted values and add `get_custody_columns` tests
2024-04-25 03:01:51 +08:00
Hsiao-Wei Wang 24899b7fba
Apply suggestions from @jtraglia 2024-04-24 19:04:40 +08:00
Alex Stokes b13e03e671
Merge pull request #3714 from kevaundray/kw/use-optimized-bls-msm
chore: use py-arkworks's multi-exp method inside of `g1_lincomb` and `g2_lincomb`
2024-04-23 11:57:13 -06:00
Alex Stokes ddee2cefc8
Merge pull request #3711 from EchoAlice/dev
Refactor `upgrade_to_electra()`
2024-04-23 11:08:31 -06:00
Hsiao-Wei Wang a526cdf446
Fix: use TypeVar for "point" rather than bytes 2024-04-24 00:22:20 +08:00
Hsiao-Wei Wang bab254b0ba
Add description of `multi_exp` 2024-04-24 00:08:42 +08:00
Kevaundray Wedderburn f3302a3836 - return serialized identity points
- result = None initially
2024-04-23 15:11:46 +01:00
Kevaundray Wedderburn d28a0164d2 add is_zero check 2024-04-23 14:55:37 +01:00
Kevaundray Wedderburn 5eb19b3cef modify g1_lincomb and g2_lincomb 2024-04-23 14:21:54 +01:00
Kevaundray Wedderburn 5a74f40442 g2_lincomb uses g2_multi_exp 2024-04-23 13:38:27 +01:00
Kevaundray Wedderburn e7e49ec71a lint fixes 2024-04-23 13:38:14 +01:00
Hsiao-Wei Wang 57c14e5400
Add `get_custody_columns` tests 2024-04-23 20:21:33 +08:00
Kevaundray Wedderburn 640675f628 add `g1_multi_exp` 2024-04-23 12:44:50 +01:00
Justin Traglia 73637c84b2
EIP-7594: Add asserts for public functions (#3684)
* Add length asserts for public PeerDAS functions

* Fix cell asserts

* Rename field variable to satisfy linter

* Add asserts for row/column indices

* Use CELLS_PER_EXT_BLOB

* Update to work with new spec changes

* Fix indentation

* Add explict check for cell_id
2024-04-23 12:12:26 +03:00
EchoAlice b52182cdd6 Refactor `upgrade_to_electra()` 2024-04-22 13:31:37 -06:00
kevaundray e51f7df77d
chore: make list copy explicit in `divide_polynomialcoeff` (#3706) 2024-04-22 10:43:04 -05:00
George Kadianakis 4fceca2b75
Merge pull request #3710 from kevaundray/kw/rm-field-elements-from-das-core
chore: use CELLS_PER_EXT_BLOB to compute the number of columns
2024-04-22 17:59:31 +03:00
Justin Traglia bcd0a09e68
Integrate new Coset/CosetEvals types (#3701)
* Add CellBytes type

* Use ByteVector, not Vector

* Fix tests

* Replace b"" with []

* Apply suggestions for bytes_to_cell

* Add/integrate new CosetEvals type

* Remove accidental new line

* Fix recover_all_cells

* Fix recover_matrix

* fix CosetEvals abstraction leak

* Introduce internal Coset type for `coset_for_cell()`

* Use CosetEvals in compute_kzg_proof_multi_impl()

* update test

* satisfy linter

* Fix two nits I noticed

---------

Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-authored-by: George Kadianakis <desnacked@riseup.net>
2024-04-22 17:03:57 +03:00
Kevaundray Wedderburn 79d255b15a use CELLS_PER_EXT_BLOB in das-core 2024-04-22 14:08:44 +01:00
kevaundray 5c561722b8
add BLS_MODULUS to places where we subtract two integers (#3709) 2024-04-22 15:57:52 +03:00
George Kadianakis 858f51617d
Merge pull request #3708 from kevaundray/kw/hww-max-extended-matrix-size
chore: add a new config `MAX_EXTENDED_MATRIX_SIZE`
2024-04-22 15:56:51 +03:00
Kevaundray Wedderburn 3f2d498cee rename 2024-04-22 13:02:42 +01:00
George Kadianakis 0ffd0ca432
Merge pull request #3703 from kevaundray/kw/add-comment-for-verify-kzg
chore: Add more docs for the kzg verify algorithm
2024-04-22 12:46:12 +03:00
Hsiao-Wei Wang e46c4c39fb workaround: add a new config `MAX_EXTENDED_MATRIX_SIZE` to avoid `class Container(List[c, a*b])` 2024-04-22 10:31:58 +01:00
Kevaundray Wedderburn dca048d8df push @asn-d6 suggestions 2024-04-22 09:57:58 +01:00
kevaundray 0e4fc984ef
Remove unused return value (#3704) 2024-04-19 20:16:19 -05:00
terence 22a9c726ec
Fix `ExecutionLayerWithdrawalRequest` container to also imply it's for EIP7002 2024-04-19 16:30:04 -07:00
Kevaundray Wedderburn 4684c5748c add comment for verify algorithm 2024-04-19 19:19:17 +01:00
Justin Traglia bc69c357b4
Merge pull request #3702 from kevaundray/kw/fix_recover_polynomial
Change `recover_polynomial` to `recover_all_cells`
2024-04-19 12:54:21 -05:00
Kevaundray Wedderburn 3ddd00e741 use recover_all_cells 2024-04-19 12:50:32 +01:00
Kevaundray Wedderburn 32cbda9de2 rename to recover_all_cells 2024-04-19 12:50:22 +01:00
Kevaundray Wedderburn 33dfa88160 fix bad merge 2024-04-19 12:07:58 +01:00
Kevaundray Wedderburn c2b7c0b414 Merge branch 'dev' into kw/optimize-compute-kzg-proof-multi 2024-04-19 12:04:15 +01:00
Hsiao-Wei Wang 9c04cf13c9
Merge pull request #3695 from kevaundray/kw/fix-kzg-multi-comment
chore: Fixes and elaborates on comments for `compute_kzg_proof_multi`
2024-04-19 15:32:09 +09:00
Hsiao-Wei Wang 0b312cae8b
Merge pull request #3692 from kevaundray/patch-11
chore: Change g2_lincomb to take in G2Points
2024-04-19 15:30:22 +09:00
kevaundray 8e3500b2b5
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-04-18 20:26:52 +01:00
kevaundray 1669723adf
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-04-18 20:26:46 +01:00
Kevaundray Wedderburn 6c8955d4bc chore: fix comment 2024-04-18 18:12:15 +01:00
Kevaundray Wedderburn 912038bb08 modify cell proofs comment 2024-04-18 18:11:41 +01:00
Kevaundray Wedderburn 4d073f10a2 remove remainder polynomial when in monomial form 2024-04-18 18:00:01 +01:00
Kevaundray Wedderburn d913140164 fix comments for kzg_proof_multi 2024-04-18 17:52:33 +01:00
Kevaundray Wedderburn 7e85c962f2 change CELLS_PER_BLOB in das-core.md 2024-04-18 17:40:51 +01:00
Kevaundray Wedderburn 3b889645ff number of cells in an extended blob 2024-04-18 17:38:04 +01:00
kevaundray 45e70747bb
Update polynomial-commitments-sampling.md 2024-04-18 15:02:30 +01:00
Alex Stokes 82133085a1
clarify pending partial withdrawals handling 2024-04-17 14:17:07 -06:00
Alex Stokes b02be79a05
Merge pull request #3680 from ethereum/validator-guide-aggregate
Use validator guide `compute_on_chain_aggregate` in testing
2024-04-17 14:07:53 -06:00
Mikhail Kalinin 040f3f1f22 Fix off-by-one in churn computations 2024-04-17 18:18:59 +06:00
Hsiao-Wei Wang e6e7c92eca
weird fix 2024-04-17 15:46:22 +08:00
Alex Stokes a07e144adc
Merge pull request #3659 from ethDreamer/activation_rate_limiting
EIP-7251: Enforce Activation Rate Limit at Fork Transition
2024-04-16 16:14:44 -06:00
Alex Stokes 3b259b6a9f
Merge pull request #3676 from ethDreamer/balance_churn_limit
EIP-7251: Rename get_churn_limit() for clarity
2024-04-16 15:57:46 -06:00
Mikhail Kalinin fea074e7c5
Fix toc: attempt 2 2024-04-17 01:07:52 +06:00
Mikhail Kalinin 736e26abfc
Merge branch 'dev' into add-container-change 2024-04-17 00:24:25 +06:00
Mikhail Kalinin 373baa85aa
Update toc 2024-04-17 00:20:52 +06:00
Mark Mackey 8b6b710ccd EIP-7251: rename get_churn_limit() for clarity 2024-04-16 12:01:21 -05:00
Mark Mackey 38dfd4a8b4 Merge remote-tracking branch 'upstream/dev' into activation_rate_limiting 2024-04-16 10:11:00 -05:00
Hsiao-Wei Wang 0252e12d73
Add notes 2024-04-16 19:57:23 +08:00
Hsiao-Wei Wang db2c01a5f5
Reorder by processing seq 2024-04-16 19:54:05 +08:00
NC 5b2f60221e Add modified AttesterSlashing 2024-04-16 19:41:28 +08:00
Alex Stokes c0fa05de1e
Fix tests from 7251 and merge of other EIPs into Electra 2024-04-15 22:30:14 -06:00
Alex Stokes 034909ddb6
Merge in EIP-7251 tests to Electra 2024-04-15 20:10:14 -06:00
Alex Stokes e1840a78a0
bugfix: check for all possible credentials when processing EL withdrawal request 2024-04-15 19:59:07 -06:00
Alex Stokes 35534989ff
reorg some spec functions 2024-04-15 19:37:53 -06:00
Alex Stokes 9bcafc87e3
fix lint 2024-04-15 19:37:53 -06:00
Alex Stokes 4d212b4263
tighten conditional logic for withdrawal requests: list len cannot be greater than its bound 2024-04-15 19:37:53 -06:00
Alex Stokes d243afab25
address PR feedback 2024-04-15 19:37:53 -06:00
Alex Stokes 54e0f42752
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-04-15 19:37:53 -06:00
Alex Stokes ce3931653d
Add EIP-7251 to Electra fork 2024-04-15 19:37:49 -06:00
Alex Stokes 4c60dade42
Merge branch 'fix-7251-tests' into pr/ralexstokes/3656-1 2024-04-15 14:00:04 -06:00
Mark Mackey 805c0e1894 Reclaim Lost Epochs 2024-04-10 13:31:59 -05:00
Mark Mackey 8ff66f896d Removed Secondary Sort Condition 2024-04-10 11:24:48 -05:00
Mark Mackey 21262499d7 Simplify Sorting Logic 2024-04-10 11:20:42 -05:00
Hsiao-Wei Wang 397f9eb15a
Merge branch 'dev' into pr3656 2024-04-10 21:39:44 +09:00
fradamt dd0bea032f improve pending consolidation tests, fix bug in beacon-chain 2024-04-10 14:11:38 +02:00
terence 497d7999a6
Clarify electra validator spec with EIP7549 2024-04-09 19:12:08 -07:00
Hsiao-Wei Wang 7582b7ffbf
Merge pull request #3665 from jtraglia/upgrade-electra-blob-gas
Track blob gas when upgrading to electra
2024-04-10 07:34:21 +09:00
Alex Stokes 4835ed1040
some clean ups from merging EIP-7002 into Electra 2024-04-09 12:58:30 -06:00
Justin Traglia d046d07c26 Fix "new in" comment so it's consistent with others 2024-04-09 12:28:03 -05:00
Justin Traglia b641582ed7 Track blob gas when upgrading to electra 2024-04-09 12:24:56 -05:00
Hsiao-Wei Wang 4e8e1784bc
Merge pull request #3662 from jtraglia/per-ext-blob
EIP-7594: Use FIELD_ELEMENTS_PER_EXT_BLOB in NUMBER_OF_COLUMNS
2024-04-10 01:03:11 +09:00
Justin Traglia 3dcf9ebe54 Use FIELD_ELEMENTS_PER_EXT_BLOB in NUMBER_OF_COLUMNS 2024-04-09 08:44:30 -05:00
Hsiao-Wei Wang 94a0b6c581
Merge branch 'dev' into pr3653 2024-04-09 12:55:56 +09:00
Hsiao-Wei Wang ab8815ba10
Merge branch 'dev' into init-electra 2024-04-09 12:26:07 +09:00
Hsiao-Wei Wang 1db1c54323
add comment 2024-04-09 10:33:48 +08:00
Alex Stokes 3cf3e21504
Update beacon-chain.md 2024-04-08 16:28:17 -06:00
Mark Mackey 397c2beeb8 Enforce Activation Rate Limit at Fork Transition 2024-04-08 16:02:02 -06:00
Alex Stokes 2ed284da22
format comment in EIP-7251 spec 2024-04-08 08:19:29 -06:00
Alex Stokes dd2721f3c6
Merge pull request #3657 from ralexstokes/eip-7251-spec-fixes
Various spec fixes for EIP-7251
2024-04-08 08:09:51 -06:00
Mikhail Kalinin 64da0da132
Fix has_sufficient_effective_balance computation 2024-04-07 18:15:01 +06:00
Alex Stokes 8cf2fd50f6
add EIP-7251 `initialize_beacon_state_from_eth1` function 2024-04-06 17:18:15 -06:00
Alex Stokes 61168e6124
spec bugfix: incorrect `process_epoch` definition 2024-04-06 17:18:15 -06:00
Alex Stokes b5d7bd0a8a
bugfix: voluntary exit processing in EIP-7251 2024-04-06 17:18:15 -06:00
Alex Stokes a80a777589
add missing extended types for EIP-7251 2024-04-06 17:18:15 -06:00
Alex Stokes 982a983072
EIP-7251: format/lint fixes/docs, add validator guide 2024-04-06 17:18:12 -06:00
Alex Stokes b18bbd8c61
Merge pull request #3636 from mkalinin/eip-7251
EIP-7251: misc changes
2024-04-06 10:22:45 -06:00
NC 6ad0c07c78 Remove extra ` queue_excess_active_balance` call 2024-04-06 22:53:04 +08:00
Alex Stokes e4068b5391
Merge EIP-7549 into Electra 2024-04-05 13:56:57 -06:00
Alex Stokes 4287340401
typo: text of electra validator guide 2024-04-05 11:36:49 -06:00
Alex Stokes bba0e63ec4
typo: electra fork summary 2024-04-05 11:36:49 -06:00
Hsiao-Wei Wang 257b2ebe7a
Apply suggestions from code review
Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>
2024-04-05 11:36:49 -06:00
Hsiao-Wei Wang 55c81e7fa1
Merge EIP7002 into Electra 2024-04-05 11:36:49 -06:00
Hsiao-Wei Wang 9c4e1db821
EIP6110 meta update 2024-04-05 10:53:42 -06:00
Hsiao-Wei Wang d2c69fe3cf
Rename EIP6110 to Electra 2024-04-05 10:53:42 -06:00
Mikhail Kalinin ace9db9aa9
Set FULL_EXIT_REQUEST_AMOUNT to 0 2024-04-05 15:35:06 +03:00
Hsiao-Wei Wang e64afbc630
Apply suggestions from code review
Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>
2024-04-05 06:13:45 +08:00
Hsiao-Wei Wang 806ed66769
Merge branch 'dev' into init-electra 2024-04-05 07:03:29 +09:00
Hsiao-Wei Wang 6cfa8f713e
Merge pull request #3629 from StefanBratanov/eip_6110_rename_function
EIP-6110 rename `get_eth1_deposit_count` function
2024-04-05 06:02:20 +08:00
Hsiao-Wei Wang 128a273586
Merge pull request #3574 from ethereum/peer-das
[WIP] EIP-7594: PeerDAS protocol
2024-04-05 06:00:27 +08:00
Dmitrii Shmatko dc8e9a775f Remove confusing "due to" on voluntary_exits topic update 2024-04-04 18:32:24 +04:00
Hsiao-Wei Wang cd91c04066
Merge branch 'dev' into init-electra 2024-04-04 22:49:53 +09:00
Hsiao-Wei Wang 8728561da3
Merge branch 'dev' into peer-das 2024-04-04 22:23:02 +09:00
Mikhail Kalinin 4f8fb6f716
Update specs/_features/eip7251/beacon-chain.md
Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>
2024-04-04 14:49:25 +03:00
Mikhail Kalinin 881768c9d5
Replace MAX_EB with MIN_AB 2024-04-03 17:45:48 +03:00
Potuz 38bf699c4b Remove wip messages on shipped forks 2024-04-03 10:37:48 -03:00
Hsiao-Wei Wang 025ebed9c8
Merge pull request #3640 from ethereum/eip7549-tests
EIP-7549: Enable EIP-7549 on CI
2024-04-03 20:57:05 +08:00
Paul Harris 9b291ab0a1 fix toc link 2024-04-02 16:11:59 +10:00
Paul Harris 4606ab43e5 [EIP-7251] rename PartialWithdrawal field 2024-04-02 15:43:28 +10:00
Hsiao-Wei Wang ce591f98c8
Enable EIP7549 CI 2024-04-01 10:43:38 +09:00
Hsiao-Wei Wang cf3c4eca8c
Fix conflicts with #3631 2024-04-01 10:37:49 +09:00
Hsiao-Wei Wang eec5503d4f
Fix tests and specs 2024-03-31 16:35:24 +09:00
Mark Mackey 52e9552bbd Fix bug in get_active_balance() 2024-03-29 11:59:16 -06:00
Mikhail Kalinin 221f273e14 Fix lint 2024-03-29 22:35:12 +06:00
Mikhail Kalinin 7bbecfb762 Revert "Replace MIN_ACTIVATION_BALANCE with MAX_EFFECTIVE_BALANCE"
This reverts commit 6f5cc4baf5.
2024-03-29 15:27:12 +06:00
Mikhail Kalinin d004391fb1 Merge branch 'dev' into eip-7251 2024-03-29 15:25:07 +06:00
Hsiao-Wei Wang 1a65d4f648
Merge pull request #3627 from status-im/seen-ttl
Align `seen_ttl` with attestation lifetime
2024-03-29 10:29:31 +08:00
Hsiao-Wei Wang e926d2e791
Merge pull request #3618 from dapplion/eip-7251
Add EIP-7251 spec: Increase MAX_EFFECTIVE_BALANCE
2024-03-28 14:13:26 +08:00
Mikhail Kalinin 534bcfc116 Use source.effective_balance for consolidaiton churn 2024-03-28 11:49:44 +06:00
Mikhail Kalinin 915f90e13e Strictly check withdrawal address upon consolidation 2024-03-27 18:05:05 +06:00
Mikhail Kalinin 517f741f29 Abort voluntary exit if validator has pending partial withdrawals 2024-03-27 17:57:54 +06:00
Mikhail Kalinin 46638d31ba Remove unused method 2024-03-27 17:42:10 +06:00
Mikhail Kalinin 31142b0ba1 Require sufficient EB to emit partial withdrawal 2024-03-27 17:41:00 +06:00
Mikhail Kalinin 6f5cc4baf5 Replace MIN_ACTIVATION_BALANCE with MAX_EFFECTIVE_BALANCE 2024-03-27 17:35:27 +06:00
Mikhail Kalinin cda10d059b Refactor EL withdraw request processing 2024-03-27 16:51:38 +06:00
Mikhail Kalinin 73ede3a804 Fix pending_balance_to_withdraw == 0 check when full exit 2024-03-27 15:44:38 +06:00
Mikhail Kalinin 5e32d442a2 Fix the sweep by enabling 0x02 creds 2024-03-27 12:42:37 +06:00
Mikhail Kalinin 06104f24e3 Fix is_partially_withdrawable_validator 2024-03-27 01:43:15 +09:00
dapplion e6aaa9d44d Fix lint 2024-03-27 01:35:36 +09:00
dapplion 23ad85e8bf Allow to switch to compounding validator on deposit 2024-03-27 00:31:09 +09:00
Hsiao-Wei Wang 30be96bac3
Merge pull request #3632 from parithosh/add-electra-config
Add electra fork config
2024-03-26 21:48:28 +08:00
Hsiao-Wei Wang 88a35a1de1
update the spec files too 2024-03-26 13:18:40 +08:00
fradamt 4775641f05 fix broken pending deposits tests and typo 2024-03-25 15:26:50 +01:00
Mikhail Kalinin bb8ba9c045
Apply suggestions from code review
Co-authored-by: Lion - dapplion <35266934+dapplion@users.noreply.github.com>
2024-03-25 19:20:58 +06:00
fradamt 97966d825a small fixes 2024-03-25 12:23:19 +01:00
Mikhail Kalinin 702ac28858 eip7549: flatten aggregate_bits 2024-03-25 16:43:19 +06:00
dapplion 4e7c82ccc6 Remove is_aggregator changes 2024-03-23 00:04:29 +09:00
dapplion 08732e69c6 fix typo 2024-03-22 15:28:44 +09:00
dapplion 72c4f04261 @ensi321 review 2024-03-22 14:24:34 +09:00
dapplion 84a5ae919c rename to partial_withdrawals_count 2024-03-22 14:24:34 +09:00
dapplion 6d9ebe15bb set_compounding_withdrawal_credentials 2024-03-22 14:24:34 +09:00
dapplion ebdb513ec8 queue_excess_active_balance 2024-03-22 14:04:03 +09:00
Lion - dapplion 2014edbbaa
Update validator.md 2024-03-22 13:25:03 +09:00
Stefan Bratanov 4f61308147 EIP-6110 rename `get_eth1_deposit_count` function 2024-03-21 13:13:30 +00:00
Mikhail Kalinin 45f98d6a67 Set MIN_SLASHING_PENALTY_QUOTIENT_EIP7251=4096 2024-03-21 17:32:03 +06:00
Mehdi AOUADI ec633e8871 clarify network aggregation vs onchain aggregation 2024-03-20 16:31:46 +01:00
Mikhail Kalinin 8873d02360 Fix linter 2024-03-20 16:52:05 +06:00
Mikhail Kalinin d48b5e0665 Update whistleblower reward for eip7251 2024-03-20 16:10:30 +06:00
Mikhail Kalinin a127bbf0c6
Merge branch 'dev' into eip-7251 2024-03-20 14:46:43 +06:00
Mikhail Kalinin be79aab782 Fix toc 2024-03-20 14:42:21 +06:00
Mikhail Kalinin cdbc2b760c Fix linter 2024-03-20 13:58:18 +06:00
Mikhail Kalinin 98f38c7f07 Introduce MAX_PARTIAL_WITHDRAWALS_PER_PAYLOAD 2024-03-20 13:53:42 +06:00
Mark Mackey f6359f9afb Fix Bug in process_pending_balance_deposits 2024-03-19 13:31:55 -05:00
Mark Mackey cf70df25d9 Address Comments and Cleanup Spec 2024-03-19 11:12:33 -05:00
Jacek Sieka 1242368b58
Align `seen_ttl` with attestation lifetime
https://github.com/ethereum/consensus-specs/pull/3360 effectively
extends the valid lifetime of an attestation/aggregate to 2 epochs -
this means that an aggregate that was published at the beginning of a
slot now is valid per the gossip rules up to 2 epochs later.

Then net effect of the above change is that peers are allowed to
republish old aggregates and attestations and libp2p will not stop the
spread with the settings we recommend - instead the messages will have
to be stopped with the "attestation cover rule" or similar, even though
they have been observed already.

Significant amounts of this kind of spam have been observed on the
aggregate channel in particular leading to a 5x increase in aggregate
traffic as some clients republish these old messages in spite of the
"attestation cover rule" which should have stopped them - this simple
change will provide an additional layer of protection against such bugs.
2024-03-19 08:53:54 +01:00
Hsiao-Wei Wang 5d80b1954a
Merge pull request #3559 from dapplion/attestation-index
EIP-7549: Move committee index outside Attestation
2024-03-14 23:54:20 +08:00
Hsiao-Wei Wang 46b118a212
Merge pull request #3619 from asn-d6/peerdas_poly_degree_overflow
PeerDAS: Check for degree overflow in multiply_polynomialcoeff()
2024-03-14 19:09:31 +08:00
dapplion fc65a6f864 Fix CI 2024-03-13 00:23:47 +08:00
George Kadianakis 4b6b07b73e PeerDAS: Use FIELD_ELEMENTS_PER_EXT_BLOB in def of PolynomialCoeff 2024-03-12 15:07:42 +02:00
danny 7a20cae75e
tiny formatting in deneb p2p 2024-03-11 12:10:44 -06:00
dapplion 5f78d2b436 apply suggestions 2024-03-11 11:10:41 +08:00
George Kadianakis c71fb00c8e PeerDAS: Check for degree overflow in multiply_polynomialcoeff() 2024-03-08 18:04:55 +02:00
dapplion c5af391ad4 Add validator doc 2024-03-08 17:02:40 +08:00
dapplion 668e447c55 Add EIP-7251 spec
Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>
2024-03-08 12:37:35 +08:00
Hsiao-Wei Wang 43dbf8cef5
Fix ToC and apply @mehdi-aouadi's suggestion 2024-03-06 23:28:07 +08:00
Hsiao-Wei Wang 03c23c6fb1
make it executable for basic linter checks & fix errors 2024-03-06 23:24:21 +08:00
Hsiao-Wei Wang ec9bbfa2ea
Merge EIP7002 into Electra 2024-03-06 14:23:23 +08:00
Hsiao-Wei Wang 82271d1229
EIP6110 meta update 2024-03-06 14:00:55 +08:00
Hsiao-Wei Wang 6ffd27bd60
Rename EIP6110 to Electra 2024-03-06 13:38:49 +08:00
dapplion 38f269ca12 Update spec with @mkalinin suggestions 2024-03-05 20:58:05 +08:00
dapplion accee2b8be Merge remote-tracking branch 'upstream/dev' into attestation-index 2024-03-05 17:19:49 +08:00
Hsiao-Wei Wang cebf78a83e
Apply PR feedback 2024-02-27 22:42:32 +09:00
Hsiao-Wei Wang 1acb1ff24f
minor arrange 2024-02-20 22:23:23 +08:00
Hsiao-Wei Wang bb33f9082c
Change List length of `DataColumn` from `MAX_BLOBS_PER_BLOCK` to `MAX_BLOB_COMMITMENTS_PER_BLOCK` 2024-02-20 22:06:09 +08:00
Hsiao-Wei Wang 8150f76e1c
Apply @cskiraly's suggestion 2024-02-20 22:02:10 +08:00
Mikhail Kalinin 3e2650811e
Introduce UINT64_MAX_SQRT 2024-02-16 13:39:46 +06:00
Hsiao-Wei Wang cdb6725275
Merge pull request #3596 from fradamt/patch-4
fix typo
2024-02-16 11:34:22 +08:00
Hsiao-Wei Wang f82a3af978
Merge pull request #3600 from ethereum/integer_squareroot
Handle `integer_squareroot` bound case
2024-02-16 02:47:25 +08:00
Hsiao-Wei Wang e3d91d8e2a
Rename `MAX_UINT_64` -> `UINT64_MAX` 2024-02-15 15:00:56 +08:00
Hsiao-Wei Wang 2faa44b6b6
Merge pull request #3591 from asn-d6/peerdas_refactor_recovery_polynomial
peerDAS: Initial refactor of recover_polynomial()
2024-02-14 21:40:37 +08:00
Hsiao-Wei Wang 90afb238ed
Update specs/_features/eip7594/polynomial-commitments-sampling.md 2024-02-14 20:51:50 +08:00
Hsiao-Wei Wang 7076fb2b75
Handle `integer_squareroot` bound case 2024-02-14 17:18:05 +08:00
Etan Kissling 4e2578dfe4
Schedule Deneb for Mainnet
As discussed in https://github.com/ethereum/pm/issues/951, schedule
Deneb for epoch 269568.
2024-02-08 15:32:28 +01:00
fradamt ea85aa72be
fix typo 2024-02-08 13:16:49 +01:00
Etan Kissling 7f699bf594
Rename `get_safe_execution_payload_hash` -> `*_block_hash`
The name `get_safe_execution_payload_hash` is misleading, as it returns
the execution block hash. There is no concept of a payload hash. Rename
the function, and also update some documentation for clarity.
2024-02-08 09:50:39 +01:00
George Kadianakis 385b0f35ac
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-02-06 13:10:31 +02:00
George Kadianakis f1dd735784
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-02-06 13:10:24 +02:00
George Kadianakis 4b1106b39c
Update specs/_features/eip7594/polynomial-commitments-sampling.md
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2024-02-05 16:59:08 +02:00
George Kadianakis 1e41a6bc69 New FIELD_ELEMENTS_PER_EXT_BLOB: number of cells in an extended blob 2024-02-05 16:57:29 +02:00
George Kadianakis e3b83d5450 Add defensive asserts in recover_polynomial() 2024-02-05 16:56:27 +02:00
Hsiao-Wei Wang e7c0d5ff3c
Update specs/_features/eip7594/das-core.md
Co-authored-by: Jimmy Chen <jchen.tc@gmail.com>
2024-02-02 16:27:56 +08:00
Hsiao-Wei Wang 91dbbb365c
Implement `compute_extended_matrix` 2024-02-02 02:26:28 +08:00
Hsiao-Wei Wang c47d5f3578
Add `recover_matrix` and remove unused `FlatExtendedMatrix` type 2024-02-02 01:45:02 +08:00
Hsiao-Wei Wang 428c166283
Apply suggestions from code review
Co-authored-by: g11tech <develop@g11tech.io>
Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>
2024-02-01 21:17:42 +08:00
Hsiao-Wei Wang d60580bb52
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-02-01 18:09:37 +08:00
Hsiao-Wei Wang 87e9702ab0
Fix `DataColumnSidecarsByRoot` 2024-01-31 22:30:52 +08:00
Hsiao-Wei Wang d23452d02b
Deprecate `blob_sidecar_{subnet_id}` 2024-01-31 22:30:46 +08:00
Hsiao-Wei Wang 547460cd84
Apply PR feedback 2024-01-31 22:30:35 +08:00
George Kadianakis 212c1fe624 Small improvements on construct_vanishing_polynomial() 2024-01-31 14:04:23 +02:00
George Kadianakis 4d01d50437 Initial docs added to recover_shifted_data() and recover_original_data() 2024-01-31 14:04:23 +02:00
George Kadianakis be5e5c5a75 Add helpers: recover_shifted_data() and recover_original_data() 2024-01-31 14:04:23 +02:00
George Kadianakis 8b3ac46a2d Add helper method: construct_vanishing_polynomial() 2024-01-31 13:48:20 +02:00
Hsiao-Wei Wang 170dae5609
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>
2024-01-29 17:34:47 +08:00
Hsiao-Wei Wang 7aab57703e
Merge branch 'dev' into peer-das 2024-01-29 17:29:20 +08:00
Hsiao-Wei Wang b2a4657da5
Merge branch 'peer-das-req-subnet-count' into peer-das 2024-01-29 17:23:33 +08:00
Hsiao-Wei Wang edeef070d8
toc 2024-01-28 22:47:49 +08:00
George Kadianakis ae3ef6f330
Merge pull request #3579 from asn-d6/peerdas_public_method_bytes
peerDAS: Public methods must accept raw bytes
2024-01-26 17:36:54 +02:00
Hsiao-Wei Wang 56e6a98b9c
`verify_data_column_sidecar_kzg_proof` -> `verify_data_column_sidecar_kzg_proofs` 2024-01-20 17:24:57 +08:00
Hsiao-Wei Wang 4477cc6952
Fix column computation 2024-01-20 14:43:35 +08:00
Hsiao-Wei Wang f1dff5f676
Merge pull request #3581 from ethereum/reduce-len-call
Optimization: reduce `len()` calls in `add_polynomialcoeff`
2024-01-20 14:32:13 +08:00
Hsiao-Wei Wang 55db86127d
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2024-01-20 14:20:27 +08:00
Hsiao-Wei Wang 65be5b0556
Make `CUSTODY_REQUIREMENT` unit be subnets; move some depended helpers to `das-core.md` 2024-01-20 00:51:28 +08:00
Hsiao-Wei Wang a72ece8348
Apply suggestions from code review
Co-authored-by: g11tech <develop@g11tech.io>
2024-01-19 22:37:02 +08:00
Hsiao-Wei Wang 9553d5490a
fix typo 2024-01-19 22:30:53 +08:00
Hsiao-Wei Wang 665e6faff7
Add `RowIndex`, `ColumnIndex` custom types in crypto doc 2024-01-19 19:14:03 +08:00
Hsiao-Wei Wang 696d443f0a
Merge branch 'dev' into peer-das 2024-01-19 17:56:10 +08:00
Hsiao-Wei Wang 4fe36dec58
Add transition test case of non-empty pre-state `historical_roots` 2024-01-18 00:10:45 +08:00
George Kadianakis 2000a4f307 Improve test_verify_cell_proof_batch() 2024-01-17 17:20:36 +02:00
George Kadianakis 66798602dd Minor fixes based on review 2024-01-17 14:18:03 +02:00
danny a35d783b1c
Merge pull request #3543 from etan-status/gv-finstore
Use fork choice to determine `finalized_checkpoint` in gossip validation
2024-01-16 09:06:32 -07:00
danny 8983893009
Merge pull request #3552 from etan-status/gv-alignaggregate
Align gossip validation for aggregates with single attestations
2024-01-16 08:59:02 -07:00
danny 9a54a32238
Merge pull request #3431 from saltiniroberto/fork-choice-changes-for-confirmaton-rule
Confirmation rule prerequisite - fork choice filter change
2024-01-16 08:49:21 -07:00
George Kadianakis 87f2ad2681 Public methods: int -> uint64 2024-01-16 16:58:14 +02:00
Hsiao-Wei Wang 96e41bca30
Optimization: reduce `len()` call 2024-01-16 16:51:05 +08:00
George Kadianakis a4331e7c63 Public methods must accept raw bytes 2024-01-15 18:38:18 +02:00
George Kadianakis b4d418d8ce Remove some trailing whitespace 2024-01-15 17:34:28 +02:00
Etan Kissling 82143e1977
Also bump `EXECUTION_PAYLOAD_GINDEX` 2024-01-15 12:48:22 +01:00
Hsiao-Wei Wang 0b5bb1ae3f
Merge branch 'dev' into pr3563 2024-01-15 19:09:28 +08:00
Hsiao-Wei Wang b594347780
Merge pull request #3549 from etan-status/lc-finsend
Gossip additional `LightClientFinalityUpdate` on new supermajority
2024-01-15 18:58:24 +08:00
Hsiao-Wei Wang 868a600a57
Merge pull request #3537 from etan-status/lc-gindexname
Rename `_INDEX` generalized index constants to `_GINDEX`
2024-01-15 18:57:48 +08:00
Hsiao-Wei Wang 504b4f9036
Migrating to latest crypto APIs 2024-01-15 17:12:47 +08:00
Hsiao-Wei Wang 93dddd15f2
wip
wip

Add `TARGET_NUMBER_OF_PEERS`

Add networking spec draft

fix

simplification

Rename `DoYouHave` to `GetCustodyStatus`

Add DataLineSidecar design

Apply suggestions from code review

Co-authored-by: dankrad <mail@dankradfeist.de>
Co-authored-by: danny <dannyjryan@gmail.com>

Revamp after reviews and discussion

Remove `CustodyStatus`

minor fix

Change`DataColumn` to `List[DataCell, MAX_BLOBS_PER_BLOCK]`

Move folder

Replace `DataColumnByRootAndIndex` with `DataColumnSidecarByRoot` message. Add extended data description

Remove `DataRow`

Apply suggestions from @jacobkaufmann code review

Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Represent matrix in `BLSFieldElement` form

Add `assert time >= store.time` to `on_tick`

Revert the spec. Only handle it in tests

Remove extra tick

cleanup leftover

Add randomized block cases

Specify RPC byRoot blocks-sidecars elegibility

fix typo

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

add failed on_block condition

rephrase

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

apply suggestion

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

remove the last consider

from on_block to state_transition

simplify and add a new rule

Update specs/phase0/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>

Update specs/deneb/p2p-interface.md

Co-authored-by: danny <dannyjryan@gmail.com>

remove gossip failure rules

Apply suggestions from code review

bump version to v1.4.0-beta.5

Move `blob_sidecar_{subnet_id}` to `Blob subnets` section

Misc minor fix

Add linter support

Add column subnet validation. Split `verify_column_sidecar` into two functions

Fix `get_data_column_sidecars` by using `compute_samples_and_proofs`

Apply suggestions from code review

Co-authored-by: danny <dannyjryan@gmail.com>

Do not assign row custody

Apply suggestions from code review

Co-authored-by: danny <dannyjryan@gmail.com>

Revamp reconstruction section

Use depth as the primary preset for inclusion proof. Fix `get_data_column_sidecars` and add tests for merkle proof

Change `SAMPLES_PER_SLOT` to 8 and add tests (requirement TBD)

Apply PR feedback from @ppopth and @jtraglia

Fix `get_data_column_sidecars`

Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>

Apply suggestions from code review

Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com>

Apply suggestions from code review

Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>
Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Fix `get_data_column_sidecars` and `get_custody_lines`

Apply suggestions from code review

Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com>

Enhance tests

fix typo

Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com>

Remove `epoch` from `get_custody_lines`

fix

fix
2024-01-15 17:12:43 +08:00
Hsiao-Wei Wang d6a37ecfcb
Copied from Danny's ethresearch post 2024-01-15 16:48:57 +08:00
Hsiao-Wei Wang b7d9ea9a75
Rename `peerdas` to `eip7594` 2024-01-14 00:13:08 +08:00
Dankrad Feist 4cc1e14a17
Forgot factor of 2 for roots_of_unity_extended 2024-01-12 12:39:08 +00:00
Dankrad Feist 9a851d93c4
Linter 2024-01-11 21:58:24 +00:00
Dankrad Feist 7ec0a2531c
Doctoc 2024-01-11 21:11:57 +00:00
Dankrad Feist c2522ac467
Correct type definition for PolynomialCoeff 2024-01-11 21:05:51 +00:00
Dankrad Feist b55ab46909
Correct type info for verify_kzg_proof_multi_impl 2024-01-11 20:57:16 +00:00
Dankrad Feist fddbd6b76c
Remove constants in favour of using compute_roots_of_unity 2024-01-11 15:42:10 +00:00
Dankrad Feist d21d99f8d8
Add constant for multi cell verification challenge 2024-01-10 19:13:33 +00:00
George Kadianakis a58c86832a Randomize the test_recover_polynomial() 2024-01-09 16:05:00 +02:00
Etan Kissling c41c128c76
Use `Custom types` section instead of `Helper types` for consistency 2024-01-09 14:55:22 +01:00
Hsiao-Wei Wang be8b30a593
Merge branch 'dev' into fork-choice-changes-for-confirmaton-rule 2024-01-09 02:06:12 +08:00
Hsiao-Wei Wang db89e2981a
Clean up Deneb specs. Add some type casting for using fft function 2024-01-09 01:37:24 +08:00
Hsiao-Wei Wang 9a0727000c
Rename `recover_cells` to `recover_polynomial` and fix function signature. Add basic test case. 2024-01-08 23:18:51 +08:00
Hsiao-Wei Wang 03583b1b47
Fix fft helper and add basic test 2024-01-05 20:31:09 +08:00
Hsiao-Wei Wang 7f8858b2ac
Add `PeerDAS` feature 2024-01-05 18:43:37 +08:00
Hsiao-Wei Wang 5854c7efb8
Fix some lint errors 2024-01-05 18:33:01 +08:00
Hsiao-Wei Wang 75b1bf515a
Add `KZG_SETUP_G1_MONOMIAL` to trusted setup files 2024-01-05 18:21:15 +08:00
Hsiao-Wei Wang c58c4a71b2
Merge branch 'dev' into polynomial-commitments-sampling 2024-01-05 18:07:53 +08:00
Etan Kissling fca5e3b06a
Use proper types when dealing with LC Merkle proofs 2023-12-27 13:59:31 +01:00
Etan Kissling 3e5427e31e
Align formatting 2023-12-27 12:54:36 +01:00
Etan Kissling 5717a81393
Capella addition 2023-12-27 12:44:05 +01:00
Etan Kissling 316ea98792
Use types for representing LC Merkle branches
For better legibility and alignment with `ethereum/beacon-APIs`, use
named types for the various Merkle branches used in the LC protocol.

- https://github.com/ethereum/beacon-APIs/blob/v2.4.2/types/altair/light_client.yaml#L2-L22
2023-12-27 12:42:29 +01:00
Dankrad Feist 9ec5dde8ac
Remove polynomial_coeff_to_eval 2023-12-23 15:21:19 +00:00
Dankrad Feist d36fc4f5a0
Zero polynomial -> vanishing polynomial 2023-12-23 15:08:02 +00:00
Dankrad Feist 3169f92fa5
More sample -> cell renaming 2023-12-23 14:52:39 +00:00
Dankrad Feist 246477ace2
SAMPLE -> CELL and cleanups 2023-12-23 14:44:58 +00:00
Dankrad Feist 62d1a8f4c4
Add public method markers 2023-12-22 09:44:16 +00:00
Hsiao-Wei Wang f0af688fbd
Minor fixes 2023-12-13 00:25:30 +08:00
Hsiao-Wei Wang 0d4007a6d9
Apply suggestions from code review
Co-authored-by: Justin Traglia <95511699+jtraglia@users.noreply.github.com>
2023-12-12 23:51:50 +08:00
Hsiao-Wei Wang bf09b9a7c4
Merge pull request #3442 from dapplion/whisk-tests
Add WHISK fork only tests
2023-12-08 18:56:03 +09:00
dapplion e8e00f332a move attestation index outside signed message 2023-12-05 14:16:07 +02:00
danny b2f2102dad
Merge pull request #3556 from ethereum/blob-subnets
Move `blob_sidecar_{subnet_id}` to `Blob subnets` section
2023-12-04 10:15:57 -07:00
danny d343b6f1d9
Apply suggestions from code review 2023-12-04 07:47:12 -07:00
Dankrad Feist 94ecce76ee
Add polynomial commitments for sampling 2023-12-04 01:12:07 +00:00
Hsiao-Wei Wang c43173e5bf
Move `blob_sidecar_{subnet_id}` to `Blob subnets` section 2023-12-02 07:33:18 +08:00
Enrico Del Fante ba09761ec3
remove gossip failure rules 2023-12-01 18:36:25 +01:00
Enrico Del Fante cf39eeda3d
Update specs/deneb/p2p-interface.md
Co-authored-by: danny <dannyjryan@gmail.com>
2023-12-01 17:29:54 +01:00
Enrico Del Fante eed7a66b25
Update specs/deneb/p2p-interface.md
Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>
2023-12-01 08:28:41 +01:00
Enrico Del Fante dad09f64b3
Update specs/phase0/p2p-interface.md
Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com>
2023-12-01 08:28:29 +01:00
Enrico Del Fante c661e20e60
simplify and add a new rule 2023-11-30 16:11:33 +01:00
Enrico Del Fante bdac932ebb
from on_block to state_transition 2023-11-30 15:20:35 +01:00