Earlier quoted context omitted.
According to Eth docs: > One validator is randomly selected to be a block proposer in every slot. This validator is responsible for creating a new block and sending it out to other nodes on the network. Also in every slot, a committee of validators is randomly chosen, whose votes are used to determine the validity of the block being proposed. The annotated code for this can be found in [2]. [1] https://github.com/eth…
Maybe I am stupid, but at least to me its not obvious how one would randomly select a member in a decentralized way, assuming some actors are malicious?
Ethereum Proof-of-Stake
21–30 of 338 posts
Re: Ethereum Proof-of-Stake
#22I have seen description like this so many times, but no guide seems to describe exactly how everything is done in decentralised way. "The validators for each slot are assigned to committees". By whom? Also what if there is network partition for these 12 seconds. It's not very unlikely that some country could be completely cutoff from the internet for some time due to anything from natural or political reasons. Could…
Heres my understanding of it: committee assignment is random, as in baked into the protocol, similar to how a validator is selected for a block (i.e. randomly). While only one validator creates the block, others create attestations which I understand as duplicate work done to check the chosen validators produced block. If an entire country goes down, those validators fall out of the active set and assuming some major…
That's wrong. Also the state of those validators that are separated from the larger network is not wrong it's just not the same as what the majority considers the state.
They will be on a forked chain of the network. But for being on a fork, no validator is slashed. They will only lose out on the rewards they would have gotten on the majority chain.
Validators are only slashed if they try to vote for the same slot/blockheight on different forks of the chain.
Re: Ethereum Proof-of-Stake
#23Earlier quoted context omitted.
Generally we've described this sort of research as "review resistant", rather than being secure in some classical sense. How Ethereum and other cryptocurrencies actually work is often eagerly explained but completely unfathomable on closer inspection. Concerns raised are fixed with additional complexity repeatedly until the reviewer grows weary of attempting to piece it together. Consequently there's sufficient confl…
That's a gross misrepresentation of how it works in the real-world. Do you believe the same about cryptography? Since you can't understand it, and few really understand the full system, algorithms and functions, it must be "review resistant" rather than actually safe to use?
The implementations are also very close to formally verified if not fully formally verified.
Nothing is perfect but cryptographic code has to be pretty bulletproof or a lot of systems would get owned. The descriptions of how to verify cryptographic systems are academically and professionally rigorous especially compared to eth.
Caveat: sometimes the underlying systems that cryptographic implementations utilize change degrading their guarantees. There have been times where the compiler will get updated and cause what was a branchless process to branch which could lead to information leaks against a dedicated attacker. Thankfully such examples are rare in the literature.
Re: Ethereum Proof-of-Stake
#24Earlier quoted context omitted.
According to Eth docs: > One validator is randomly selected to be a block proposer in every slot. This validator is responsible for creating a new block and sending it out to other nodes on the network. Also in every slot, a committee of validators is randomly chosen, whose votes are used to determine the validity of the block being proposed. The annotated code for this can be found in [2]. [1] https://github.com/eth…
Maybe I am stupid, but at least to me its not obvious how one would randomly select a member in a decentralized way, assuming some actors are malicious?
Re: Ethereum Proof-of-Stake
#25Earlier quoted context omitted.
According to Eth docs: > One validator is randomly selected to be a block proposer in every slot. This validator is responsible for creating a new block and sending it out to other nodes on the network. Also in every slot, a committee of validators is randomly chosen, whose votes are used to determine the validity of the block being proposed. The annotated code for this can be found in [2]. [1] https://github.com/eth…
Maybe I am stupid, but at least to me its not obvious how one would randomly select a member in a decentralized way, assuming some actors are malicious?
[1] https://eth2.incessant.ink/book/06__building-blocks/02__rand...
Re: Ethereum Proof-of-Stake
#26Earlier quoted context omitted.
Generally we've described this sort of research as "review resistant", rather than being secure in some classical sense. How Ethereum and other cryptocurrencies actually work is often eagerly explained but completely unfathomable on closer inspection. Concerns raised are fixed with additional complexity repeatedly until the reviewer grows weary of attempting to piece it together. Consequently there's sufficient confl…
The spec is open and documented pretty clearly.[1] [1] https://notes.ethereum.org/@vbuterin/Sys3GLJbD#Misc
Re: Ethereum Proof-of-Stake
#27Re: Ethereum Proof-of-Stake
#28> There are two key equivocation rules a validator must follow, taken from the Gasper paper: > > Double vote - no validator makes two distinct attestations for the same target block > > Surround vote - no validator makes an attestation that surrounds or is surrounded by a previous attestation Which are both punished by having the saked ETHs being "slashed" (32 ETHs staked, you end up losing 16 of the 32). I never und…
> So it's impossible to stake without risking your ETHs getting slashed, even if the staker is honest. I mean, the entire point of staking your ETH is to say "Hey, I'm willing to risk these ETH to \"prove\" that I'm a honest validator and that my node is secure. If I fuck up, I'm willing to accept the punishment". Without risking those ETH, it means nothing to stake ETH, and would break down the idea behind it. I'm n…
Yet there are HSM / hardware wallet so that it becomes way harder to "fuck up".
There's a difference between a nefarious actor having its own ETH slashed and a nefarious actor finding a way to have an honest actor's ETH slashed.
Isn't it possible to imagine secure hardware device to stake ETHs instead of having to run validation code on general, insecure, purpose computers which gets owned all the time?
I literally mean that: the same as hardware wallet to stake/validate instead of sign transactions.
I think you got my critique right: I find it's folly to stake on general purpose computers.
Re: Ethereum Proof-of-Stake
#29Earlier quoted context omitted.
Maybe I am stupid, but at least to me its not obvious how one would randomly select a member in a decentralized way, assuming some actors are malicious?
There are tons of different ways of doing so, with their own set of pros/cons. I'm not familiar with exactly how Eth2 does it, but I suppose your curiosity is a general one, not specific to Eth2, so here is how it works for Algorand as an example using VRFs (Verifiable Random Function): > The VRF takes a secret key and a value and produces a pseudorandom output, with a proof that anyone can use to verify the result.…
Re: Ethereum Proof-of-Stake
#30Great article, it put an end to many misunderstandings that I had. The technology is truly marvelous.
???