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
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
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
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
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
terence tsao
b128148a17
Modify MIN_EPOCHS_FOR_BLOBS_SIDECARS_REQUESTS
to 18 days
2022-10-17 16:24:19 -07:00
terence tsao
96b90200b7
Fix ToC
2022-10-17 16:08:59 -07:00
terence tsao
eb5a2c2741
Couple beacon block and blob sidecar for p2p
2022-10-17 15:16:38 -07:00
Hsiao-Wei Wang
b90436c988
Fix capella random & fork
2022-10-14 23:42:42 -05:00
ethosdev
24f8ec170b
Remove work-in-progress notes in Bellatrix specs ( #3033 )
...
* Remove the work-in-progress note in Bellatrix spec
Bellatrix is done and released.
* Remove work-in-progress notes in Bellatrix specs
* Remove work-in-progress notes in Bellatrix specs
* Remove work-in-progress notes in Bellatrix specs
2022-10-15 05:05:45 +08:00
Alex Stokes
092617ec1e
Remove duplicated definition of Validator
2022-10-09 17:02:50 -05:00
Hsiao-Wei Wang
3552e2f6e8
Merge pull request #3018 from ethereum/bump-dep
...
Bump dep packages version and fix lint issues
2022-10-07 00:21:51 +08:00
Alex Stokes
4e26813c81
Merge pull request #3023 from dapplion/patch-1
...
Typo in sync committee duties description
2022-10-05 20:10:12 -06:00
Lion - dapplion
fda2a69ff7
Typo in sync committee duties description
...
I assume it refers to producing a signature for the last slot of phase0 fork
2022-10-02 12:19:55 +02:00
Ramana Kumar
807650e8a1
Fix some type annotations for blobs
...
blobs should not be Sequence[BLSFieldElement], it should be
Sequence[Sequence[BLSFieldElement]]. But we can be more specific and use
Sequence[Blob].
2022-10-01 15:25:47 +01:00
Danny Ryan
6b9e65fab6
Merge pull request #3019 from terencechain/fix-eip4844
...
EIP4844: various fixes
2022-09-30 10:51:42 -06:00
Danny Ryan
9dfb1897a4
Merge pull request #3004 from Inphi/inphi/eip4844-fee-mkt
...
EIP-4844: Update ExecutionPayloadHeader
2022-09-30 08:16:53 -06:00
terencechain
779e6e7b7e
Update specs/eip4844/p2p-interface.md
...
Co-authored-by: Lion - dapplion <35266934+dapplion@users.noreply.github.com>
2022-09-29 13:43:28 -07:00
terence tsao
06c91e4843
Try a different format for epoch
2022-09-29 07:55:50 -07:00
terence tsao
93cb17dc7f
Eip4844: various fixes
2022-09-29 07:36:39 -07:00
Hsiao-Wei Wang
44424c4080
Bump dep packages version and fix lint issues
2022-09-28 12:38:21 +08:00
Ramana Kumar
9ac605cc5e
Fix incorrect comment
...
bit-reversal permutation is not idempotent
2022-09-27 12:13:56 +01:00
George Kadianakis
6c2b46ae32
Merge pull request #3015 from asn-d6/bytes_to_bls_field
...
EIP4844: Introduce bytes_to_bls_field() helper
2022-09-26 23:55:16 +03:00
Danny Ryan
eeebd42a95
Merge pull request #2998 from ethereum/remove-withdrawn-epoch
...
remove withdrawn_epoch
2022-09-26 14:30:25 -06:00
George Kadianakis
d197ed1451
EIP4844: Introduce bytes_to_bls_field() helper
...
Improves separation between BLS cryptography and Ethereum SSZ logic.
Now the BLS library just implements bytes_to_bls_field(). Then hash_to_bls_field() does the Ethereum SSZ magic and
calls bytes_to_bls_field().
2022-09-26 19:01:01 +03:00
George Kadianakis
f4ba8b55ee
EIP4844: Implement reverse bit ordering in KZG commitments
...
Co-authored-by: Dankrad Feist <mail@dankradfeist.de>
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2022-09-26 16:39:16 +03:00
Alex Stokes
189d61e386
Merge pull request #3008 from terencechain/patch-137
...
eip4844: signed_blobs_header -> signed_blobs_sidecar
2022-09-22 15:13:14 +02:00
George Kadianakis
e4fdb8a0ad
Merge pull request #3005 from ethereum/eip4844-patch-dr
...
Fixing EIP-4844 function names
2022-09-22 12:59:42 +03:00
terencechain
1bb863b2a6
eip4844: signed_blobs_header -> signed_blobs_sidecar
2022-09-21 14:49:18 -07:00
Justin Traglia
5517729859
Fix TOC with check_toc
2022-09-21 16:41:33 -05:00
Justin Traglia
7066307a0f
Fix section name for withdraw_balance
2022-09-21 16:36:27 -05:00
inphi
ceee7bfbf1
EIP-4844: Fee market updates to execution
2022-09-21 09:14:46 -04:00
Justin Traglia
603e27f459
Fix state list lengths table
2022-09-20 15:24:14 -05:00
Justin Traglia
3bc7ff9f80
Fix a few things in Capella specs
2022-09-20 14:43:38 -05:00
Dankrad Feist
b35155005b
Rename matrix_lincomb to vector_lincomb and lincomb to g1_lincomb
2022-09-19 20:16:19 +01:00
Dankrad Feist
b63ed22588
Fix signature of compute_aggregated_poly_and_commitment
2022-09-19 20:10:48 +01:00