Giulio rebuffo
9503672194
Separation of SSZ Beacon State and Fix BeaconRpc ( #6635 )
2023-01-20 20:41:16 +01:00
Giulio rebuffo
4e53a12c53
Flexible Blocks and States for easy hard forking ( #6566 )
...
Preparation for Shangai Beacon Blocks/Beacon State
2023-01-17 02:22:05 +01:00
Mike Neuder
01ce83ad99
ProcessAttesterSlashing ( #6581 )
...
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#attester-slashings
Part of https://github.com/ledgerwatch/erigon/issues/5965
2023-01-15 12:05:51 +01:00
hexoscott
7dcbfbc283
reference hash, address, and chain config from lib ( #6536 )
2023-01-13 18:12:18 +00:00
Giulio rebuffo
4bee05dd12
Added ETH1 Block SSZ Hashing to CL ( #6549 )
...
more of SSZ again.
2023-01-11 17:18:14 +01:00
Mike Neuder
799d6b9441
Implement ProcessProposerSlashing ( #6531 )
...
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#proposer-slashings
Part of https://github.com/ledgerwatch/erigon/issues/5965
2023-01-09 21:00:55 +01:00
Giulio rebuffo
599480c5e0
ExecutionPayloaHeader: ssz support for withdrawals root ( #6524 )
...
I do not recommend this.
2023-01-09 01:04:05 +01:00
Giulio rebuffo
77d946ba3e
[First PR] Removing FastSSZ and use more efficient hashing with gohashtree ( #6520 )
2023-01-07 12:25:28 +01:00
Mike Neuder
3c1740f108
Adding SlashValidator ( #6505 )
...
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#slash_validator
Part of https://github.com/ledgerwatch/erigon/issues/5965
2023-01-07 00:19:26 +01:00
Mike Neuder
d595accc63
Adding InititateValidatorExit ( #6478 )
...
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#initiate_validator_exit
Part of https://github.com/ledgerwatch/erigon/issues/5965
Co-authored-by: Giulio rebuffo <giulio.rebuffo@gmail.com>
Co-authored-by: ledgerwatch <akhounov@gmail.com>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2023-01-02 15:06:04 +01:00
Mike Neuder
f0be116bc2
Implement ProcessEth1Data ( #6445 )
...
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#eth1-data
Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-27 14:57:32 +01:00
Giulio rebuffo
fa55cf8efe
Added full backfilling routine with support with Phase0/Altair and Bellatrix + Consensus Layer Database Schema Prototype ( #6435 )
...
This PR Adds:
* Backfilling routine, downloads and write to db all historical blocks.
* Prototype of first attempt at Database schema for Historical blocks.
* Fixed minor bugs.
* Support for following forks: Phase0, Altair, Bellatrix.
2022-12-25 18:07:12 +01:00
Mike Neuder
aa9b30a656
Implement ProcessRandao ( #6425 )
...
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#randao
Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-24 19:39:39 +01:00
Giulio rebuffo
5fd3536ef0
Erigon-cl database schema ( #6399 )
2022-12-22 19:59:24 +01:00
Mike Neuder
3e7c1502b7
Implement ProcessBlockHeader ( #6365 )
...
This is described in
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#block-header
Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-19 14:24:39 +01:00
Mike Neuder
66654dc4b1
Implement GetBeaconProposerIndex ( #6352 )
...
This is described in
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#get_beacon_proposer_index .
Part of https://github.com/ledgerwatch/erigon/issues/5965
I compared with the Prysm tests to confirm the implementation is
correct:
2e49fdb3d2/beacon-chain/core/helpers/validators_test.go (L151-L204)
.
2022-12-18 17:39:43 +01:00
Giulio rebuffo
14cf0771a4
slight modification to computation of indexes ( #6345 )
2022-12-17 01:01:24 +01:00
Giulio rebuffo
de8bae6fe0
optimized beacon state computation ( #6341 )
2022-12-16 13:38:54 +01:00
Mike Neuder
d1f6ed29ff
Add ComputeProposerIndex ( #6297 )
...
This is described in
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#compute_proposer_index .
Part of https://github.com/ledgerwatch/erigon/issues/5965
I compared with the Prysm tests to confirm the implementation is
correct:
2e49fdb3d2/beacon-chain/core/helpers/validators_test.go (L506-L614)
2022-12-16 00:06:49 +01:00
Giulio rebuffo
0f0d0de783
Use of proper beacon state interface ( #6277 )
2022-12-11 15:12:38 +01:00
Mike Neuder
f512c887dc
Add ComputeShuffledIndex algorithm. ( #6267 )
...
This is described in:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#compute_shuffled_index .
I ran the prysm implementation locally to generate the expected outputs:
babfc66c5b/beacon-chain/core/helpers/shuffle.go (L73)
Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-10 13:59:29 +01:00
Giulio rebuffo
ecf34b2493
Proper Beacon State Repressentation attempt ( #6254 )
2022-12-09 00:55:31 +01:00
Giulio rebuffo
0da12e4c94
Verification by root and not by slot ( #6243 )
2022-12-07 21:26:45 +01:00
Mike Neuder
3a8c9ccdb3
Add state transition function and unit test. ( #6170 )
...
Part of https://github.com/ledgerwatch/erigon/issues/5965
See
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#beacon-chain-state-transition-function .
2022-12-01 20:57:41 +01:00
Mike Neuder
d3d65f6caa
Add verify block signature function and unit test ( #6166 )
...
Part of https://github.com/ledgerwatch/erigon/issues/5965
See
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#beacon-chain-state-transition-function .
2022-11-30 22:50:00 +01:00
Mike Neuder
eb7e5c2c6e
Adding processSlots functionality and unit test for transitionState and processSlots ( #6136 )
...
Part of the CL implementation.
https://github.com/ledgerwatch/erigon/issues/5965
2022-11-26 23:34:17 +01:00
Giulio rebuffo
8c67c55cc7
Created Erigon beacon downloader ( #6130 )
2022-11-25 16:38:22 +01:00