4964 Commits

Author SHA1 Message Date
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
inphi
459310f744
Fix test_process_execution_payload 2022-10-24 16:25:50 -04:00
inphi
0488c0c26e
remove unchanged epoch processing section 2022-10-24 12:51:54 -04:00
inphi
2ac57c7e7b
Fix py setup
And remove the ENABLE_WITHDRAWALS feature-flag. The Testing section in
the spec has been updated to specify how withdrawals is to be disabled
2022-10-24 12:44:11 -04:00
Hsiao-Wei Wang
9844ea1f30
Merge pull request #3040 from ethereum/capella-test-vectors
Capella test vectors
2022-10-23 06:44:03 +08:00
terence tsao
e2d0a4fa9a Fix ToC and test 2022-10-22 08:36:46 -07:00
terence tsao
9f4ae4c6ee Update validator spec with SignedBeaconBlockAndBlobsSidecar 2022-10-21 17:33:55 -07:00
Inphi
f6f2474c87
Update specs/eip4844/beacon-chain.md
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-10-20 14:39:18 -04:00
inphi
242e1b73bb
Rebase Capella on EIP-4844
This also introduces an `ENABLE_WITHDRAWALS` feature-flag to allow
implementers test EIP-4844 without including Capella-specific state
changes.
2022-10-20 10:36:08 -04:00
Hsiao-Wei Wang
53b63cedc5
Merge branch 'dev' into pr3050 2022-10-19 10:21:32 -05:00
terence tsao
dfa5ac8008 @protolambda's feedback, SignedBlobsSidecar -> BlobsSidecar 2022-10-18 11:34:14 -07:00
terencechain
cab2e3ef9a
Describe sidecar and block are recieved together
Co-authored-by: protolambda <proto@protolambda.com>
2022-10-18 11:23:19 -07:00
terencechain
779d9be66a
Compare sidecar slot with block slot
Co-authored-by: protolambda <proto@protolambda.com>
2022-10-18 11:22:43 -07:00
Jim McDonald
0345b2284a
Add validator_index to Withdrawal. 2022-10-18 15:35:06 +01:00