HackerTrans
TopNewTrendsCommentsPastAskShowJobs

0xfoobar

no profile record

comments

0xfoobar
·4 tahun yang lalu·discuss
Agreed that conceptual simplicity is always best, and the current Casper FFG + LMD-GHOST doesn't have provable guarantees yet (though seems to be working in practice). I'm excited to see slight modifications to the consensus/forkchoice algo that do have provable guarantees, like [Goldfish](https://www.paradigm.xyz/2022/09/goldfish) from Paradigm Research.
0xfoobar
·4 tahun yang lalu·discuss
Indeed! :)
0xfoobar
·4 tahun yang lalu·discuss
For those interested in understanding the tech rather than the typical bashing things as beneath them, I wrote up a detailed technical explainer of how Ethereum PoS works: https://0xfoobar.substack.com/p/ethereum-proof-of-stake
0xfoobar
·4 tahun yang lalu·discuss
Great question, it's not timestamps but attestations (signed validator votes for pairs of checkpoint blocks) that determines the canonical chain head. This fork choice rule, known as LMD-GHOST, is different from PoW which has a "greatest difficulty" rule for determining the canonical chain.

There is some element of bootstrapping who the original validator set was, known as "weak subjectivity". There's a great post from Vitalik exploring this further at https://blog.ethereum.org/2014/11/25/proof-stake-learned-lov...
0xfoobar
·4 tahun yang lalu·discuss
The Solend drama was at the app-layer rather than the protocol-layer. Solana also runs PoS but its variant is a bit more handwavy and weaker imo, slashing rules are applied in a post-hoc human decision-making process rather than clear rules enshrined within the protocol.
0xfoobar
·4 tahun yang lalu·discuss
Great question, PoS actually has stronger guarantees against double-spending than PoW does. For PoW you just need to temporarily rent enough hashpower to do a mild reorg.

PoS has a concept called "block finality", where once a block has been marked finalized it cannot be reorged without committing to getting slashed for 1/3 of total staked ether (several billion dollars). Blocks typically get finalized after 6 minutes. This is possible because you can explicitly check whether validators have voted (attested) for two separate blocks at the same chain height.
0xfoobar
·4 tahun yang lalu·discuss
Article author here.

PoS validators have the power to propose new blocks and attest to the chain head. They cannot change the state transition function to allow false payments, just as BTC miners cannot use their block proposal power to mint arbitrary coin amounts.
0xfoobar
·4 tahun yang lalu·discuss
Article author here.

The tradeoffs between centralized control and permissionless primitives are better explored elsewhere, but the dangerously high costs of depending on a fickle intermediary for all transactions should be clear to any informed observer.

Consider a Russian citizen unable to flee Putin's wartorn regime because all personal life savings and assets have been frozen.

Just as private communications make some tradeoffs for not acquiescing to the surveillance state, so permissionless value transfer makes tradeoffs.

Also recommend a thread writeup on the importance of privacy I put together: https://twitter.com/0xfoobar/status/1502083084052836354
0xfoobar
·4 tahun yang lalu·discuss
Article author here.

Supermajority attestations and block finalization, as well as withdrawal queues, prevent long-range attacks. To attempt to reorg a finalized block (blocks are generally finalized after 6 minutes) you have to commit to losing 1/3 of total staked ether, currently several billion dollars.

The only participants who can equivocate (vote for two blocks at the same height) are active validators so there is significant economic value at risk to pursue such an attack.
0xfoobar
·4 tahun yang lalu·discuss
Article author here.

Great questions, should have explored the randomness beacon more. Ethereum uses [RANDAO](https://github.com/randao/randao), which is a distributed commit-reveal scheme where participants in the generation post a hash of their data on the commit portion and then at a later timestamp reveal the data preimage, and get slashed if they do not reveal a correct preimage. Then all participant data is aggregated together. This means if there is at least one honest participant the generation will be random.

A supermajority (2/3rds) of validators is required to finalize a block, in case of a 50-50 network partition blocks would stop being finalized and attestation rewards would stop. Non-participating validators would slowly leak stake through the inactivity leak until online validators once again had a supermajority. This is the "self-healing" mechanism that allows both safety and liveness.