Conversation

Replying to
9) But there are a lot of advantages to ETH2 over Solana. It will come with a larger built-in ecosystem, more active developers, more validators, more value securing the protocol, etc. The biggest thing that Vitalik pointed to, though, was the cost of running a node.
1
76
10) This was probably the crux of it for him. You can run an ETH2 node on a laptop; Solana requires a decently high performance desktop. There are a lot of reasons this matters; one is that it's easier to debug something that's slower. But the largest is decentralization.
4
104
11) On ETH2, it's plausible that there could be 10m validators and 1m block producers; 100m+ laptops are made each year. And more crucially, *most users of ETH2 could run a node for very little cost*. That means that a random person using an ETH2 DEX could validate its shard.
5
75
12) This doesn't mean it can validate the whole blockchain--it likely couldn't--but it could validate the shard of the application it was using. This means that each user could practically verify themselves that the transactions they were doing were legit.
2
74
13) This provides a huge added layer of security: even if consensus broke down and the block producers tried to do something nefarious, each user could notice and call bullshit. Even if they didn't have 51% stakeweight, if 80% of users disagree with a block, they can hard fork.
1
64
14) How about Solana? Well, the cost of running a node is dedicating a ~$500 machine to it. Which isn't that much, for a large player in crypto! But it is for a random user. And so in practice only people fairly interested in the ecosystem are likely to run nodes.
8
77
15) This doesn't necessarily effect literal consensus that much--those players likely had most of the stakeweight anyway, because anyone with large stakeweight could easily get a machine to validate. But it does mean that a random user might not be able to call bullshit.
1
45
16) You lose the sense of each person, practically speaking, validating their own transactions. ---------- Anyway, enough preamble. What could make a high throughput chain relatively more secure? There were basically two types of suggestions Vitalik had.
1
49
17) The first was variants on "find some sub-unit and split validation on it". This is what sharding does. Some examples that might work on Solana: a) One huge shard plus lots of small shards. Basically, the 'main' shard would be what Solana is now.
2
45
18) Smaller shards would limit themselves to ~1k TPS, and be designed so that a laptop could validate them. That way people really concerned with validating their own transactions could use smaller shards, and apps the require large usage or composability could use the large one
3
52
Replying to
20) This means that, no matter how large a validator is, it can only ever produce blocks for e.g. 5% of the ecosystem. That forces further decentralization of block production, and means that you need to get a more diverse set of validators on board with a timeline.
1
48
21) There were some other ideas whose details I've forgotten -- "big blocks/small blocks", "some small validator that has some power"-- do you remember those? -- The other set of ideas were about storing state securely and efficiently.
2
39
22) The goal here would be two-fold: make sure history can't be rewritten; and that it's easy for a low-powered validator to find out the state of the blockchain. One idea here is just writing the state to the ETH blockchain periodically. Then any ETH node could verify Solana.
2
53
23) Another idea was to write ZK-proofs of a Merkle tree of the blockchain, or something like that. A third thing that Vitalik brought up: it would be great if each block header contained the full state of the blockchain, so at least verifying that was easy for a laptop.
4
45
24) I'm probably missing a lot of his thoughts here, and probably misrepresented some too--sorry! But I found the conversation super interesting. There are sometimes tradeoffs between security and speed, but at least we can try to find a pareto maxima.
3
61
Replying to and
Very much so, with the caveat that we draw a distinction between the result proposal, and the verified output. We shard verification (which ensures correctness, and allows wide participation) without sharding execution (so we can preserve composability).
1
6
Show replies