Nicolas Laurent

@norswap

Joined on Jul 13, 2021

  • NOTE: The canonical version of this article now lives at https://norswap.com/rollups-scale/, please update your bookmarks! From the overview: Ethereum's limited resources, specifically bandwidth, computation, and storage, constrain the number of transactions which can be processed on the network, leading to extremely high fees. Scaling Ethereum means increasing the number of useful transactions the Ethereum network can process, by increasing the supply of these limited resources. But how do rollups increase these resources? To understand this, we first need to give some details about layer-1 (L1) Ethereum. State in L1 Ethereum The size of the L1 state as per summer 2021 was around 35GB. However, during execution, the state needs to be stored in a Merkle Patricia Tree (MPT), which takes the effective stored size to 100GB. This size is expected to grow by 50GB per year, assuming the Ethereum gas limit stays constant. These amounts does not even include historical state, some of which must be kept to be able to process chain reorganizations. A node must also keep at least some recent block header data.
     Like 2 Bookmark
  • In this write-up, I will explain what MEV is, show a few examples. Then I will propose a few ideas on how we could go about mitigating one form of MEV — namely sandwich attacks. In process, we'll talk about relayers like Flashbots, and how sandwich attack can already be avoided today. If you are already knowledgeable on MEV: First, and while I'm by no means an expert, rest assured that this is not a super naive take on MEV. As the refrain go, we want to "minimize what MEV we can, democratize the extraction of what MEV is left". The ideas presented here definitely fall into the "minimize what we can". I'm also not entirely sure we should pursue them, and these are not new ideas, but I think they're presented in a way that is conducive to conversation. Feel free to skip to the section titled "Preventing Sandwich Attacks at the Protocol Level". What is MEV MEV stands for "miner extractable/extracted value", though there is some proposal to reinterpret that as "maximum extractable value". There is extractable value each time a risk-less opportunity arises on the blockchain. I'll give a more detailed run down of the different kinds of MEV later, but here is a brief description of two of the main kinds. The first are loan liquidations, where you buy the collateral of a loan that is approaching its collateralization threshold, at a discount. The second example is arbitrage, where you buy something somewhere and sell it a higher price somewhere else. The extractable value can or cannot become extracted. "MEV" is often used for both extractable and extracted value, though people talk about the extracted value more often. The "miner" in MEV comes from the fact that if a miner could detect all forms of MEV, he could extract them himself in the block that he mines, since he is the one that chooses which transactions make it into the block, as well as their ordering.
     Like  Bookmark