Etan Kissling
0fb2447a95
Merge branch 'dev' into lc-blockfuncs
2022-11-19 12:20:18 +01:00
Ramana Kumar
19c8f21b63
Fix type annotation in verify_aggregate_kzg_proof
2022-11-19 09:17:11 +00:00
George Kadianakis
a45627164d
Merge pull request #3097 from asn-d6/verify_kzg_proof_bytes_api
...
EIP4844: Refactor `verify_kzg_proof()` to receive bytes (used in precompile)
2022-11-18 20:01:18 +02:00
Hsiao-Wei Wang
46c0447662
Merge pull request #3110 from ethereum/eip4844-test-vectors
...
Add EIP4844 to testgen and add more Capella+EIP4844 random fork tests
2022-11-18 17:18:02 +08:00
Danny Ryan
30e975806f
Merge pull request #3108 from realbigsean/validate-blobs-sidecar-in-gossip
...
Make `validate_blobs_sidecar` a gossip condition
2022-11-17 16:31:14 -07:00
Hsiao-Wei Wang
dd8b67075e
Add note comment
2022-11-18 04:51:19 +08:00
Hsiao-Wei Wang
438a7e55ea
Conver `roots_of_unity_brp` to integers
2022-11-18 03:20:25 +08:00
Hsiao-Wei Wang
78f0e0301e
Merge pull request #3052 from Inphi/inphi/eip4844-rebase
...
Rebase EIP-4844 on Capella
2022-11-18 03:16:58 +08:00
Danny Ryan
de789e2d5b
Merge pull request #3090 from ethereum/4844-topic-dep
...
clarify deprecation of `beacon_block` gossip topic in 4844
2022-11-17 12:16:24 -07:00
Hsiao-Wei Wang
ee0e2a03d2
Merge branch 'dev' into pr3052
2022-11-18 02:44:46 +08:00
Hsiao-Wei Wang
30dce7f232
Apply suggestions from code review
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-18 02:25:56 +08:00
Hsiao-Wei Wang
f1d4c9047a
Merge branch 'dev' into pr3052
2022-11-18 02:12:07 +08:00
Enrico Del Fante
620943b275
Update specs/eip4844/fork.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-16 19:19:39 +01:00
realbigsean
e8e860e1f3
make a gossip condition
2022-11-16 10:46:04 -05:00
Enrico Del Fante
b737e5370f
fix state upgrade
2022-11-16 12:12:18 +01:00
Alex Stokes
a5f8a15819
Clarify how to transition gossip
2022-11-15 10:29:03 -07:00
Hsiao-Wei Wang
11a037fd92
Merge pull request #3089 from terencechain/beacon-block-and-blobs-sidecar-by-root
...
EIP4844: Add block and sidecar retrival by root
2022-11-16 00:41:58 +08:00
terence tsao
bbc3ec02ff
Fix typos
2022-11-12 23:36:34 -08:00
George Kadianakis
fcac0b5c69
Clarify which functions are public and provided by the KZG library
2022-11-12 01:47:39 +02:00
George Kadianakis
ff34006807
Refactor `verify_kzg_proof()` to receive bytes (used in precompile)
...
This way, client devs don't need to convert to field elements themselves, and the KZG library takes care fo it.
2022-11-12 01:47:39 +02:00
inphi
3df1371897
Merge remote-tracking branch 'origin/dev' into inphi/eip4844-rebase
2022-11-11 17:32:06 -05:00
inphi
cd1e1133a5
excess_data_gas uint256
2022-11-11 17:25:06 -05:00
inphi
6327ffa687
rename excess_blobs
2022-11-11 17:24:05 -05:00
Alex Stokes
38669d4b7a
Update specs/eip4844/p2p-interface.md
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2022-11-11 11:26:48 -07:00
Alex Stokes
078bba2e3c
clarify deprecation of `beacon_block` gossip topic in 4844
2022-11-11 11:26:45 -07:00
Alex Stokes
faf308349e
Merge pull request #3086 from michaelsproul/light-client-p2p-fix
...
Fix slot checks in light client p2p spec
2022-11-11 11:03:33 -07:00
terence tsao
e2a2d68cae
Added a comment to support pre-fork-epoch
2022-11-11 09:50:06 -08:00
Michael Sproul
897b97990f
Further clarify light client slot checks
2022-11-11 22:09:33 +11:00
inphi
104cba06a6
replace get_blobs_and_kzg_commitments
2022-11-11 00:21:56 -05:00
inphi
bed1df00a2
Remove withdrawal_queue from BeaconState upgrade
2022-11-10 13:57:30 -05:00
Danny Ryan
d4a9b97cd0
Merge pull request #3084 from ethereum/validator-note-for-bls-change
...
Add note to Capella validator guide about BLS to execution change
2022-11-10 11:32:04 -07:00
inphi
a59dd37933
Merge remote-tracking branch 'origin/dev' into inphi/eip4844-rebase
2022-11-10 13:17:57 -05:00
Danny Ryan
4b573f82f6
Merge pull request #3091 from terencechain/patch-138
...
EIP4844: Explicitly mention old gossip validations for block
2022-11-10 11:16:18 -07:00
Danny Ryan
0e7d3555ea
minor copy edits
2022-11-10 11:12:33 -07:00
Danny Ryan
37996fc36c
Merge pull request #3068 from potuz/withdrawals_without_queues
...
Withdrawals without queues
2022-11-10 10:49:25 -07:00
Alex Stokes
be85e9356a
Update specs/capella/validator.md
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-11-10 09:12:35 -05:00
Alex Stokes
0f93e9aad8
Update specs/capella/validator.md
...
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-11-10 09:12:10 -05:00
Alex Stokes
be098b60c0
Update specs/eip4844/p2p-interface.md
2022-11-10 09:10:01 -05:00
Potuz
7f266bcb0f
Use next_validator_withdrawal_index
2022-11-10 08:33:11 -03:00
terencechain
579f8fd1d2
EIP4844: Explicitly mention old gossip validations for block
2022-11-09 15:06:58 -08:00
Potuz
710b124cdc
fix last commit
2022-11-08 21:51:54 -03:00
Potuz
8f42e485c7
Add extra %
2022-11-08 19:53:58 -03:00
Michael Sproul
dae1011194
Fix typos
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-09 09:41:21 +11:00
terence tsao
c447662ba0
Fix `BeaconBlocksByRootV2` for pre-4844 support
2022-11-08 12:55:43 -08:00
terence tsao
cb9159fe58
EIP4844: Add block and sidecar retrival by root
2022-11-08 10:41:48 -08:00
inphi
e3e73a8f54
Add Capella fork version
2022-11-08 09:06:38 -05:00
Michael Sproul
91de8a09f3
Fix slot checks in light client p2p spec
2022-11-08 17:06:07 +11:00
Alex Stokes
8bb1751f46
Add note to Capella validator guide about BLS to execution change
2022-11-07 15:22:26 -07:00
Potuz
99e2704c2c
make tests pass
2022-11-07 17:56:01 -03:00
Potuz
ac670e2c47
add phase0 sentence regarding process slots
2022-11-07 17:34:19 -03:00
Potuz
2f89f5096d
Danny's review 1st pass
2022-11-07 17:29:56 -03:00
terence tsao
f010de0871
Remove domain blobs sidecar
2022-11-07 07:16:42 -08:00
Hsiao-Wei Wang
95ee291f58
Merge branch 'dev' into pr3052
2022-11-07 10:10:16 -05:00
Hsiao-Wei Wang
544ae28721
Merge pull request #3016 from ethereum/gen_kzg_trusted_setups
...
Rework the testing KZG trusted setups presets
2022-11-07 22:29:54 +08:00
Hsiao-Wei Wang
b7dfd5a37e
Merge pull request #3027 from ethereum/eip-4844-fee-ssz-fix
...
eip4844: update tx_peek_blob_versioned_hashes to match tx type from fee market update
2022-11-07 22:22:12 +08:00
Hsiao-Wei Wang
dac756efee
Minor clean up
2022-11-07 09:09:09 -05:00
Etan Kissling
08ff71688f
Merge branch 'dev' into lc-blockfuncs
2022-11-07 15:03:20 +01:00
Hsiao-Wei Wang
72544d5307
Merge pull request #3081 from ethereum/add-capella-bls-to-exec-change-block-packing
...
add note about packing BLS to execution changes into a block
2022-11-07 06:22:04 +08:00
Hsiao-Wei Wang
6f0a7ef046
Merge pull request #3080 from ethereum/ralexstokes-patch-1
...
Fix typo in `bellatrix` p2p docs
2022-11-07 05:18:03 +08:00
Alex Stokes
b5ecf44c91
add note about packing BLS to execution changes into a block
2022-11-04 16:41:07 -06:00
Alex Stokes
e1e37deb56
Merge pull request #3075 from ethDreamer/gossip_bls_to_execution_change
...
Capella: Add Gossip Topic bls_to_execution_change
2022-11-04 16:22:43 -06:00
Alex Stokes
c8d1614e7e
Apply suggestions from code review
2022-11-04 16:19:26 -06:00
ethDreamer
355ca296b8
Update specs/capella/p2p-interface.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:23 -05:00
ethDreamer
6c1fa0a485
Update specs/capella/p2p-interface.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:15 -05:00
ethDreamer
1f68c57a7b
Update specs/capella/p2p-interface.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-11-04 17:13:07 -05:00
Alex Stokes
cd5567b735
Update p2p-interface.md
2022-11-04 15:54:30 -06:00
Potuz
8488fb79d9
Alex Stokes' review
2022-11-04 18:47:56 -03:00
Potuz
e15b02d16f
lint
2022-11-04 09:13:21 -03:00
Potuz
22f803a038
name change and increment operator
2022-11-04 07:20:26 -03:00
Potuz
6e913ecbd2
rename to latest_withdrawal_validator_index
2022-11-03 20:23:35 -03:00
Hsiao-Wei Wang
0b1f32ec25
Fix capella/block_processing tests
2022-11-03 16:08:05 -05:00
Potuz
a09d617737
right ret
2022-11-03 15:07:03 -03:00
Potuz
329bafa6e2
dapplion's suggestions
2022-11-03 14:58:55 -03:00
Potuz
12404d0250
fix for loop
2022-11-03 14:56:38 -03:00
Hsiao-Wei Wang
ad36548480
Fix auto-rebase errors
2022-11-03 11:46:07 -05:00
Potuz
39e6ec5d14
lint
2022-11-03 11:43:56 -05:00
Potuz
a14479a70f
g11tech review
2022-11-03 11:43:56 -05:00
Potuz
ff1dd90012
fix toc
2022-11-03 11:43:24 -05:00
Potuz
5b92eae08f
type annotation
2022-11-03 11:43:24 -05:00
Potuz
0f74ab5686
type annotation
2022-11-03 11:43:24 -05:00
Potuz
c156ea6adc
linting and typo
2022-11-03 11:43:24 -05:00
Potuz
49a2519da2
lint
2022-11-03 11:43:24 -05:00
Potuz
7dbd50e958
Reviewers' comments
...
- Implemented many of Alex's comments including reinsertion of the
withdrawal index in the BeaconState
- Implemented Sean's suggestion of separating the logic for block
production so that one matches the list in the payload with what
`get_expected_withdrawals` returns
- Changed `get_expected_wihdrawals` to match the current behavior and
moved it to `beacon-chain.md`
2022-11-03 11:42:31 -05:00
Potuz
f506087af5
rebase on top of develop
2022-11-03 11:42:30 -05:00
Potuz
d958ed70b4
Implement withdrawals without queues
2022-11-03 11:40:54 -05:00
George Kadianakis
b2d72a18f0
Fix type error in the inputs to hash_to_bls_field()
2022-11-03 18:13:36 +02:00
Hsiao-Wei Wang
5a0d84ed01
int casting to avoid underflow
2022-11-03 10:21:09 -05:00
George Kadianakis
86e15764ad
EIP4844: Update cryptography API ( #3038 )
...
This commit changes the public API of the KZG library to the following high-level API:
```
- verify_kzg_proof()
- compute_aggregate_kzg_proof()
- verify_aggregate_kzg_proof()
- blob_to_kzg_commitment()
```
compared to the previous much more low-level API:
```
- compute_powers()
- matrix_lincomb()
- lincomb()
- bytes_to_bls_field()
- evaluate_polynomial_in_evaluation_form()
- verify_kzg_proof()
- compute_kzg_proof()
```
This means that all the cryptographic logic (including Fiat-Shamir) is now isolated and hidden in the KZG library and the `validator.md` file ends up being significantly simplified, only calling high-level KZG functions.
Some additional things that this commit does:
- Moves all EIP4844 cryptography into polynomial-commitments.md
- Improves the Fiat-Shamir stack by removing the need for SSZ and by introducing simple domain separators
Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
Co-authored-by: Dankrad Feist <mail@dankradfeist.de>
2022-11-03 17:01:32 +02:00
Hsiao-Wei Wang
87dcb83827
Merge pull request #3063 from etan-status/lc-gossipdigests
...
Document how to derive fork context for LC gossip
2022-11-02 13:12:23 +08:00
Mark Mackey
826c20ffc2
Capella: Add Gossip Topic bls_to_execution_change
2022-11-01 12:54:33 -05:00
Hsiao-Wei Wang
498a5b0722
Merge pull request #3062 from terencechain/rm-signed-blobs
...
EIP4844: Remove signed blobs
2022-11-01 22:32:45 +08:00
Etan Kissling
ff0e525ecc
Pass blocks to LC data creation functions
...
Future light client protocol extensions may include data from the block
in addition to data from the state, e.g., `ExecutionPayloadHeader`.
To prepare for this, also pass the block to the corresponding functions.
In practice, blocks access is easier than historic state access, meaning
there are no practical limitations due to this change.
2022-10-28 22:14:25 +02:00
Alex Stokes
be3c774069
Merge pull request #3065 from etan-status/lc-branchrootdocs
...
Clarify where LC proofs are rooted
2022-10-28 08:51:26 -06:00
Etan Kissling
5b6eb8007a
Clarify where LC proofs are rooted
...
Add more detailed LC object documentation to explain that the various
merkle proofs are relative to the beacon block's state root.
Likewise, clarify that sync committees relate to the finalized header
(not to the optimistic header, which can be a period ahead).
2022-10-27 21:44:38 +02:00
Etan Kissling
af54c97a6c
Consistently use `compute_sync_committee_period_at_slot`
...
A few LC functions were not yet updated to use a more concise function
for computing sync committee period for a slot. Updating to that func.
2022-10-27 21:36:55 +02:00
Etan Kissling
c399e11aa7
Document how to derive fork context for LC gossip
...
For LC gossip, the documentation did not specify what slot number to use
for deriving the gossip objects. This missing documentation is now added
to document using `attested_header.slot`.
2022-10-27 21:23:09 +02:00
terence tsao
71775c6e87
EIP4844: Remove signed blobs
2022-10-27 08:10:32 -07:00
Hsiao-Wei Wang
af8c5bf532
Merge pull request #3046 from terencechain/couple-block-sidecar
...
EIP4844: couple beacon block and blob sidecar for p2p
2022-10-26 23:51:23 +08:00
Hsiao-Wei Wang
b7c72c3b42
Merge pull request #3047 from terencechain/reduce-min-epochs-blobs-reqs
...
EIP4844: modify `MIN_EPOCHS_FOR_BLOBS_SIDECARS_REQUESTS` to 18 days
2022-10-26 23:26:45 +08:00
Inphi
ca538f52a0
Update specs/eip4844/beacon-chain.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2022-10-25 12:06:07 -04:00