Hyperscaling Ethereum - TOKEN2049 Singapore 2023
TOKEN2049·Sat, Oct 21, 2023, 12:00 AM
Transcript
good morning everybody uh welcome to my talk on uh eigen GA eigen data availability system built on eigenlayer I'm going to talk about how to build hyperscale applications on ethereum um awesome so let's start with something pretty basic let's look at the landscape of how applications are today and there are really two Dimensions to this so you can think of two Dimensions to measure the performance of applications the First Dimension is throughput which all of us think a lot about when you want to build new games other kinds of interesting things you social all these things you want to think about what is the throughput but there is another equally important dimension that we need to think about when you're building high performance applications on ethereum and one way we like to think about this is what I call value per bit what is value per bit imagine you're doing a transaction on unit swap or uh buying a board ape on your favorite you know open CEO or whatever other nft Marketplace that you use you're transacting something worth hundred thousand dollars but it takes like a 200 byte transaction so you're essentially transacting like a thousand dollars per byte so that's what we call value per bit so what this means is when you look at what the value per bit of the applications that are being built today they're actually pretty high right you know high value applications are well suited for blockchains but if you look at where we want to be we need to enable low value per bid applications right like gaming social network you know all these kinds of things you know if you think about something like Twitter you have like a huge Twitter thread and how much value is it at least you know most of the Twitter threads are not worth anything so you have this kind of like a very low valuable bit and very high throughput but the important thing is the core performance metric is the product of these two things value per bit times bits per second is value per second so actually you can make up for the low value in actually creating high volume and so one of the fundamental problems here is that the cost per bit the cost required to transact these transactions should be much lower than the value per bit otherwise it's not going to be able to transact these kinds of interesting applications so how do we actually think about the cost contributors to a blockchain number one is the capital cost if you want one billion dollar stake do you want one billion dollar of Economic Security that means you want one billion dollar stake that's the cost of capital this is an operating cost if you're running a system and there are hundreds of thousands of nodes in ethereum there are 500 000 virtual nodes running the system they all need to download and store this data there's an operating cost related to it and then finally there is a congestion cost if you look at all blockchains today like if you know ethereum EIP 1559 it's pricing for congestion the more the block gets filled the higher the price it is so these are three contributors to the cost and how do we actually shave them down to the fundamental limits so we can actually start building super high performance applications on ethereum number one to reduce the capital cost we use shared security what does it mean we have this primitive called eigen layer eigen layer is a mechanism to share security between the ethereum core protocol and any other applications built on top since the same stake is used on all these applications you get cost reductions in capital cost how do we reduce the operating costs we reduce the operating cost by actually building better systems uh every node should not have to download and store the data and then finally we Inc we reduce the congestion cost by creating high throughput in the system so there is no congestion in fact you should be able to go and reserve your block space just like you go reserve on Amazon a node that you want to use Okay so I think you know I'm going to assume we're all familiar with the role of architecture the idea is you offload the computation but you still have to publish the data and Publishing data is very expensive on ethereum so if you think about what properties we need from a system for publishing data here are the few properties you want it to be hyperscale what is hyperscale hyperscale is very high performance you want the throughput of the system to scale as you have more and more nodes in the system so if there are end nodes the performance should increase as the number of nodes increases it should be low cost it should not cost as much as downloading and storing data on tens of thousands of nodes that will make the system very expensive you want the cost to be as low as roughly like a single node downloading and storing data you want low latency you want verifiability verifiability is you have you're running a system you want nodes from the outside to be able to actually verify that your system is doing the right thing you want hyper customizability you want to say hey if somebody's running this data system what is being staged uh what is the Erasure code being used uh what token is the fee paid in you want customizability in all these dimensions eigen da eigen data availability systems the first system that achieves all these five properties it's a system designed from first principles to be an adjacent data availability layer for ethereum which actually gets you to the fundamental limits of all these properties so powering all of this is eigen layer what is eigen layer eigen and German for your own layer you can build your own layer on top of the ethereum trust network using eigenlayer how does it work you stake in ethereum when you stake in ethereum you are putting down eth and promising that you will hold to the validation conditions of ethereum what eigen layer lets you do is to opt in to not only promise to serve ethereum block production correctly but arbitrary new systems new Chains new oracles new data availability layers Bridges game execution environments all kinds of interesting things can be built on top of the common trust Network that is ethereum so if somebody wants to build a new kind of a middleware or a service what they're building is an off-chain container which can be arbitrary code run by the node as well as a smart contract which talks to the eigen layer contracts eigen layer itself is just a system of smart contracts on ethereum talk to the eigen layer contracts and then promises that you know the Staker opts in to promise that they're going to opt in to run your new system and if they don't do it correctly they can lose their eat so that's how the trust is transferred from ethereum through eigen layer to any new system that can then be built on top awesome so how does eigen Da work eigen da is again an adjacent data availability system to ethereum You Want to Build Your Role up on Tower of ethereum and you want to know how to scale the data performance on ethereum today ethereum's data availability throughput is extremely low it's 80 kilobytes per second and at 80 kilowatts per second you can do very important high value Financial applications you cannot run your games you cannot run your social you cannot run your Twitter you cannot run all the interesting things that we were promised we can do in crypto so that's what eigen D is built to enable as an adjacent to the ethereum network how does eigenia work essentially what you have is uh you know when you're building a roll up you have this notion of a sequencer that takes all the transactions orders them and then updates the state when we're thinking about the sequencer uh what we give is an adjacent code base to the sequencer that lets you talk to the eigen DA system eigen da who are running there's a bunch of nodes running India who are these nodes they're ethereum Risk Takers ethereum stakers opt-in and promise to run this data availability system that's who's running ioda take the data use a narration code and you take a huge data blob right whichever you know the sequencer usually writes this to ethereum which is very expensive instead it takes the data blob performs a narration coding and then sends this data blob to into small chunks and sends these chunks to each of the eigen DNA nodes each of the eigen da nodes receives only a very very small chunk if there are n nodes it's only one nth of the size we have a one gigabyte file and there are 10 000 nodes each node is downloading something like 0.1 megabyte so far smaller than the original data size so they do this and then they can verify that they got the right chunks and they sign off using of BLS aggregate signatures they sign off using their signatures send it back to the node which Aggregates all these signatures and sends it back to ethereum to the eigen DA contracts Aggregates all the signatures on ethereum now it's verifiable that eigen da has done its job stored the data and then issued the certificate so now you have the certificate on eigen da contracts on ethereum now your rollup can make progress to the next step so that's the whole idea of the eigen da system it's built purely as an adjacent to the ethereum system so the fundamentally many different trade-offs that you have to make in order to build this system and that's how we achieve all these different performance metrics um one way to think about this is actually looking at the comparison of what we're able to achieve with the system so let's look at the throughput the throughput of the system I mentioned ethereum is at 83 kilobytes per second with dog sharing over the next three to four years there's a road map to go from 83 kilobytes per second to 1.3 megabytes per second on ethereum eigen da is built on some of the core ideas from dong sharing but is actually far higher throughput it's because it's not designed to do all the things that ethereum is doing which is things like consensus it only does data availability by doing this actually able to optimize for all these performance you know it the system's running at 10 megabytes per second we're not doing scaling in the same way Solana for example is doing scaling by having beefy nodes instead each node does a little bit but to gather the system does a lot so each node only needs to download 0.2 megabytes per second but the system runs at 10 megabytes per second so that's why we call the system hyperscale we have a roadmap to scale this from 10 megabytes per second in the next four years to 1000x from vaviar today so there is a lot of scaling further to be obtained um it's highly customizable it's very low cost it it transforms the economics of how you build rollups if you look at Roll-Ups today they're not really compatible or competitive with the layer ones why is that there are three factors number one all of the cost almost all of the cost in the Roll-Ups today are going to data availability the data availability cost is high okay and you know today most of the role of costs going to data availability not only the cost is high the cost is uncertain you know today the cost is x in next three days the cost May shoot up to 10x this uncertainty is too difficult for Roll-Ups to handle finally Roll-Ups cannot pay in a fixed fraction of their native token imagine you're running a layer one if you run your own layer one like an app chain what you could do is you could just say that I'm paying two percent of my inflation to the or five percent or ten percent of your inflation to your stakers you have a fixed fraction of your inflation that you need to pay but that's not the case with rollups they're paying in hard eat and you know they take exchange rate risk from their role of native token to ethereum eigen here transforms all of this and makes Roll-Ups far more competitive than building your own layer one how is this so the first one is data availability cost is really low why is it low it's low because of the reasons I laid out earlier no Capital cost because capital is shared with ethereum staking uh no low operating cost because every node downloads very little so the da cost is actually very low not only that the data availability cost is not uncertain you can reserve for data availability imagine you're building a game roll up you want to go tell your users that till this much amount of transactions it's free you can't do that with the roll-up economy today because you're paying in Hard Cash in eat to the ethereum system whereas with eigen da you can actually go and reserve for your data bandwidth for the next year so what this means is you have your guaranteed data Lane yoga Labs does a board app drop and your price shoots up no it doesn't show up you have your own reservation you have your own slot you have your own data bandwidth that's what eigenier does and finally you can actually pay da fees in your own native token imagine you're building game or social all these kinds of interesting applications one of the things you want is alignment with the ethereum community you can actually pay in your own token so heat stakers receive fee not in heat but actually in your own native token so all of these fundamentally make rollups built on eigen the extremely cost competitive in fact much better in economy of scale compared to go and building your own role your own chain ethereum actually eigen layer transforms the modular ethereum landscape lots of limitations that you have today can be removed using eigen layer so if you're integrated with Inga as you as these new features start coming up you can actually use them I highlighted already that data bandwidth issue finalization time is too slow you can actually build super fast settlement on ethereum using eigen layer many teams are working on many of these things you can reduce the censorship resistance risk using decent life sequencers espresso is building a decentralized sequencing system on eigen layer so you can get super fast liveness there are latency issues when you bridge from one roll up to the other you can actually there are a bunch of bridges building on eigen layer which actually give you super fast bridging across roll ups uh finally managing Mev which is ordering freedom is actually possible using eigen layer there is a bunch of new Mev Solutions coming up so what I want to say is eigen layer is a great complement to the modular ethereum roadmap it lets you lets people build new features that can then be utilized by roller Builders to solve the core problems that we're facing today thank you so much you can find more information on our website here
Automatic transcript — names and jargon may be misspelled.