4

I'll have a go at answering this by producing a response that has a different structure to the question but should tick-off all the necessary points along the way. Hopefully I didn't miss any. Background: I am a lead developer on Lighthouse, one of the eth2 clients that will launch at genesis. I have built most of the Lighthouse testnet tooling and launched ...


3

If I'm understanding your example correctly, that's not exactly what a surrounding vote is. From the paper, a surrounding vote is: h(s1) < h(s2) < h(t2) < h(t1) This means that the source and target of vote2 must be strictly between the source and target of the vote1 in order for slashing to occur. In your example, there is no surrounding, ...


3

I recommend the linked article for an overview of the beacon chain. The following is basically paraphrased from there: Slots are twelve-second periods of time where blocks can be added to the beacon chain and/or shards. They can be empty, if no block is created during that slot. Blocks are, as far as I know, what they used to be - an actual block ...


3

Yep, they sure do! You can find a bunch of published specifications here: https://github.com/eth2-clients/eth2-testnets They are indeed based upon the "configs/ in the eth-2.0-spec" link you provided.


3

There’s a difference between slashing detection and slashing prevention. Detection requires storing significant amounts of data but prevention only requires quite a small amount of storage. I’m not aware of any client that automatically runs a slashing detector - usually only slashing protection.


2

A Beacon Chain validator can also be a shard validator. Recall, that initially there won't be any shards. State of Ethereum Protocol #2: The Beacon Chain is a helpful article on these topics and describes that: validators participate in the protocol by proposing blocks, when chosen to do so, on both the Beacon Chain and, once they have been implemented, ...


1

The Prysm team implemented a slasher as a separate process. Official documentation on how to run a slasher: https://docs.prylabs.network/docs/prysm-usage/slasher


1

if a proposer doesn't send a block during its slot, maintaining the same state, how is the next proposer selected? The same state isn't maintained, each slot has a different state. The get_beacon_proposer_index function uses state.slot to seed the proposer shuffling. If a proposer fails to publish a block at slot n, then the proposer for the next slot will ...


1

{1} First hybrid Casper FFG paper: https://arxiv.org/abs/1710.09437 {2} New hybrid Casper FFG overview paper: https://arxiv.org/abs/1903.04205 {3} EIP1001 (also specifies constants): https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1011.md Thank you for this interesting questions, during the creation of the answer I have learned a lot. 1. Does ...


1

Generally, there are beacon chain validators and shard validators. All beacon chain validators would have the beacon chain. A beacon chain validator would usually not be able to have all shards (they choose which shards to follow), since the purpose of sharding is so that a single validator doesn't have to validate all transactions in all shards. Beacon ...


Only top voted, non community-wiki answers of a minimum length are eligible