Commit Graph

7751 Commits

Author SHA1 Message Date
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
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