7750 Commits

Author SHA1 Message Date
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
7e4d1696da
update minimal preset 2022-11-03 11:43:55 -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
88f49382e0
remove unnecessary constants 2022-11-03 11:41:17 -05:00
Potuz
d958ed70b4
Implement withdrawals without queues 2022-11-03 11:40:54 -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
Alex Stokes
32107bebef
Merge pull request #3069 from etan-status/ci-remerkleable0125
Update `remerkleable` to 0.1.25
2022-11-02 13:50:20 -06:00
Alex Stokes
1c30bbb6e9
Merge pull request #3071 from nalepae/patch-1
README.md: Fix broken links
2022-11-02 13:41:47 -06:00
Alex Stokes
8788472679
Update README.md 2022-11-02 13:26:59 -06: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
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
Manu NALEPA
e453bfe018
README.md: Fix broken links 2022-10-29 20:15:24 +02:00
Etan Kissling
9dc1a17b2d
Update remerkleable to 0.1.25
`remerkleable` was updated to address potentially incorrect computation
of `hash_tree_root` against default-initialized `Vector` objects.
Switching to the fixed version.
2022-10-28 20:40:21 +02:00
Alex Stokes
bab01d6e99
Merge pull request #3067 from etan-status/lc-synctestroot
Rename LC test check from `root` to `beacon_root`
2022-10-28 08:55:27 -06: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
Alex Stokes
72b6abd545
Merge pull request #3064 from etan-status/lc-periodatepoch
Consistently use `compute_sync_committee_period_at_slot`
2022-10-28 08:49:58 -06:00
Alex Stokes
e025aa992c
Merge pull request #3061 from etan-status/lc-finalized
Consistent variable name in LC test
2022-10-28 08:41:51 -06:00
Etan Kissling
4fc80765ad
Also update test logic accordingly 2022-10-27 22:08:24 +02:00
Etan Kissling
990866dd9f
Rename LC test check from root to beacon_root
Future light client tests will also incorporate execution payload data.
To avoid confusion, rename the current `root` check to `beacon_root`.
Doing this now, as #3066 already requires LC test runners to update.
2022-10-27 22:06:11 +02: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
Etan Kissling
14b3463f2c
Consistent variable name in LC test
In light client tests, a variable is named `finality_header` but
everywhere else it is called `finalized_header`. Rename for consistency.
2022-10-27 00:01:22 +02:00
Hsiao-Wei Wang
aac851f860
Merge pull request #3060 from ethereum/fix-bls-test-file-format
Fix BLS test case file name
2022-10-27 00:17:09 +08:00
Hsiao-Wei Wang
6c7922df67
Fix bls test case file name 2022-10-26 11:03:16 -05: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
Hsiao-Wei Wang
3c7c3a9c97
bump VERSION.txt to 1.3.0-alpha.0 (#3056) 2022-10-25 11:45:04 +08: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
Hsiao-Wei Wang
f48d6b324d
Update test formats 2022-10-20 22:27:49 -05:00
Hsiao-Wei Wang
0e2c3d89e0
Fill bls_to_execution_changes field in Capella random tests 2022-10-20 22:22:11 -05:00
Hsiao-Wei Wang
46e4473cb4
Merge pull request #3050 from mcdee/withdrawal-add-validator
Add validator_index to Withdrawal
2022-10-20 23:38:51 +08:00
Hsiao-Wei Wang
d013379628
Ensure validator_index is in validator set 2022-10-19 10:27:01 -05: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