Live data from Hacker News

Ethereum Proof-of-Stake

0xfoobar.substack.com

41–50 of 338 posts

Re: Ethereum Proof-of-Stake

#41

Earlier quoted context omitted.

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.…

I tried to search for it, but can't find any concrete example assuming malicious nodes. There are many edge cases to cover here like who gets to set the secret key or any parameter. What if nodes get offline. What about things like DDoSing the node.

For Algorand, the answer is in the very paper I linked:

> If the network does stall, either from network outages or malicious behavior, the nodes go into recovery mode, waiting for recover messages. Individual nodes will send these messages to signal to the network that it should either continue processing the last known block proposal or to propose a new block. When a quorum of votes is received for either one of these messages, the system will revert to normal operation. In the case of malicious behavior, the protocol may select a new leader. In the case of network outage, the current block will continue to be processed or a new block might be proposed.

For other blockchains, the answer will depend on their implementation. It's likely you're gonna have to understand the underlying protocol before you can understand the potential threats, and consequently how the protocol addresses those threats. So for other blockchains, your best bet to understand what happens in the case of malicious nodes, is to understand the whitepaper describing the protocol.

Re: Ethereum Proof-of-Stake

#42

> 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…

> An attacker accessing a staking node can, on purpose, double vote or surround vote to get the ETH slashed. What is the incentive for them to do that? If the node is secured physically they would need to break into a person's house and decrypt whatever security setup they might have in place. The whistleblower reward is typically fairly small, probably not worth the criminal behavior.

> What is the incentive for them to do that?

They could be short trading ETH. They could just want to create havoc. Why did people deface websites long before online ransoms were a thing? I don't think bad people need many incentives to do bad things. I may be wrong of course.

> If the node is secured physically they would need to break into a person's house and decrypt whatever security setup they might have in place.

But that's not how most exploit work. Most exploits, and by very far, are 100% software.

I mean: it's for the very reason that computers aren't devices to be trusted that many are protecting their coins using hardware wallets.

I don't know what software is needed to stake Ethereum but I'm pretty sure it involves a huge software stack.

Seriously: I don't understand how, on one hand, there are people holding the keys to move their ETHs on hardware wallets who are, on the other hand, staking these ETHs on a purely software stack. It makes approximately zero sense to me.

If you're certain your node can be trusted to safely stake your ETHs (as in: there's not risk of your ETHs getting slashed in two), why bother with a hardware wallet? Just keep the private keys that allows to move your ETHs on your node too, because you consider it's safe anyway?

I don't know: I may be all wrong on this but it sure makes no sense to me.

Re: Ethereum Proof-of-Stake

#43

Earlier quoted context omitted.

Yes it would need a hard fork - but Bitcoin community is notoriously resistant to change, so it probably would not happen for some years or decades.

It's actually a soft fork to change the consensus method believe it or not, even changing to a new proof of work scheme is completely backwards compatible. It's not a good idea and it's sort of ridiculous, but it is technically doable. If you felt inclined, we could change the transaction format, switch the scripting language to x86 assembly, issue new currencies- all in a soft fork.

How is it backwards compatible? Clients cannot continue to secure the protocol by hash mining after switching the protocol from PoW to PoS. Bitcoin moving to PoS would probably lead to a hard fork and split - two protocols, one where some group want to stay on the PoW fork, and another where some group want to migrate to the new PoS fork.

Re: Ethereum Proof-of-Stake

#44

I 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…

Would recommend reading Ben Edgington's annotated spec: https://benjaminion.xyz/eth2-annotated-spec/phase0/beacon-ch...

It's not entirely up to date (none of the annotated specs are) but out of the three annotated specs I'm aware of, it's the one that is most focused on explaining how things work. Vitalik's annotation (linked in another comment) places a particular focus on the reason specific constants where chosen.

Re: Ethereum Proof-of-Stake

#45

Earlier quoted context omitted.

The spec is open and documented pretty clearly.[1] [1] https://notes.ethereum.org/@vbuterin/Sys3GLJbD#Misc

Considering that Eth2 also have about 7 clients that work today (with more being worked on), the specification is clearly understandable by at least 7 different entities, further eroding the argument that Eth2 specification is so complicated no one actually understands it.

Most of the linked spec is pseudocode - actually it looks like valid python code. So to be fair I highly doubt you'd need any understanding of what it's actually doing to successfully implement that spec. Just like I still have no clue how Quaternions work, yet I've implemented them multiple times.

Re: Ethereum Proof-of-Stake

#46
post #31

Ahh proof of stake, the nail in the coffin of decentralization. What did you say? the more you have of the capital the more you influence the system? what a novel concept! Monterey and legal systems based on structures that are at least partially built to take care of the needs of people of similar culture and geographic area? YUCK! Machine enforced plutocratic system where early adopters and syndicates have absolute…

> the more you have of the capital the more you influence the system

That's not how PoS works, though?

Re: Ethereum Proof-of-Stake

#47
post #31

Ahh proof of stake, the nail in the coffin of decentralization. What did you say? the more you have of the capital the more you influence the system? what a novel concept! Monterey and legal systems based on structures that are at least partially built to take care of the needs of people of similar culture and geographic area? YUCK! Machine enforced plutocratic system where early adopters and syndicates have absolute…

>>the more you have of the capital the more you influence the system? what a novel concept!

That is exactly how Proof of Work works as well.

What makes PoW and PoS implementations like Ethereum's capture resistant is that they are governance-free, so capital is NOT used to influence governance. It is only used as a signal that is costly so as to prevent Sybil attacks.

Re: Ethereum Proof-of-Stake

#48
post #6

I can't see governments allowing PoW to continue to exist in our current climate (in all senses). How would Bitcoin ever move over to PoS like this? Would it just be a Bitcoin hard fork?

Current Bitcoin usage is literally a rounding error of global energy usage (0.1%) and if wildly successful would still be https://www.lynalden.com/bitcoin-energy/

If Bitcoin moved to PoS it would be fundamentally different. It might work for other coins since they aren't as decentralized.

> Instead, proof-of-stake mainly seems less suitable for a decentralized and censorship-resistant global monetary asset, especially when considered along with the issues that I’ll describe in the second half of this article about stablecoins. Proof-of-stake is inherently equity-like rather than money-like, compared to proof-of-work

https://www.lynalden.com/proof-of-stake/

Re: Ethereum Proof-of-Stake

#49

Earlier quoted context omitted.

It's actually a soft fork to change the consensus method believe it or not, even changing to a new proof of work scheme is completely backwards compatible. It's not a good idea and it's sort of ridiculous, but it is technically doable. If you felt inclined, we could change the transaction format, switch the scripting language to x86 assembly, issue new currencies- all in a soft fork.

How is it backwards compatible? Clients cannot continue to secure the protocol by hash mining after switching the protocol from PoW to PoS. Bitcoin moving to PoS would probably lead to a hard fork and split - two protocols, one where some group want to stay on the PoW fork, and another where some group want to migrate to the new PoS fork.

You define a consensus rule in NewStakeChain that it must include within it a valid block for OldChain that contains no transactions, or otherwise causes damage to the network by making it unusable such as a reorganization proof. Once the OldChain network has been destroyed by the new one, the consensus rule can be relaxed and there no longer needs to be POW completed by anybody.

This specific example works and is economically rational because miners could make a PoW block and get its reward, or they could make the no transaction attack block and get its reward, plus the reward on NewStakeChain for submitting the proof.

Re: Ethereum Proof-of-Stake

#50
post #6

I can't see governments allowing PoW to continue to exist in our current climate (in all senses). How would Bitcoin ever move over to PoS like this? Would it just be a Bitcoin hard fork?

> governments allowing PoW

Is there any precedent for this? Have governments ever ruled on how people can use their computational power?

Post reply on HN