Modular OP Stack | Optimism Summit 🔴✨ The Future of Ethereum - Karl Floersch
ETHGlobal·Sun, Oct 9, 2022, 12:00 AM
Speaker
Join Karl Floersch of Optimism for a talk titled "Modular OP Stack" - Part of our Optimism Summit 🔴✨ The Future of Ethereum. ETHOnline is our biggest event of the year! Collaborate with thousands of developers and creatives from around the world and win over $300k+ in prizes! We're bringing in 30+ of the biggest teams in web3 to give you access like never before. Learn from ecosystem leaders and build your biggest ideas as the merge nears reality. The future of Ethereum is being written right now, and it's time to make your mark. --------------------------------------------------- Follow us: https://twitter.com/ETHGlobal​ Check us out: https://ethglobal.co​m Email us at: hello@ethglobal.com #ethereum #web3 #blockchain
Transcript
foreign [Applause] [Music] so without further Ado I would love to welcome Carl onto the stage uh so Carl whenever you're ready feel free to unmute to share your screen Carl is uh listed on this chat as Carl with many Optive Op with many exclamation points so you know he's excited there you go welcome you already know how could I not be oh my goodness let me make sure that I'm okay I got all the things you're all set I'm all set we did it Reddit there you go everything else all right well I'll get out of the way and excited to hear more about the op stack okie dokie so welcome everybody going to talk about the op stack bedrock and the rise of the super chain and we actually got a solid amount of time I didn't realize we had so much time but I gotta fill up all the time so without further Ado I'm Carl of course I work at op Labs um doing this optimism stuff and so now whenever I give this or whenever I talk about these things write these words pop up on the screen there's one word that everyone sees they don't see the rest of the words they see super chain that is what they see realistically so I'm not going to start off by talking about the super chain I'm not going to talk about how it is you know all these chains kind of combined into one super duper fantastic thing I'm not going to talk about that to begin with instead what I'm going to talk about is the problem ethereum congestion back in 2016 2015 this has been a problem for way too long oh my God it's been a it's been a long it's been a long many years um but we've had too much demand for ethereum ethereum is too good and so what happened how did we solve ethereum congestion realistically speaking well we copy and pasted it into more chains all these various chains and generated by Dolly too that is what we did that is what we did and then what did we do well we connected These Chains with largely insecure Bridges these largely insecure chains realistically speaking and we gotta hack some together to address this horrible problem of congestion and in some sense optimism is kind of one of these things right it's it is a layer two but from a user experience perspective it still has a bridge it still you know feels a little bit distinct but it does have the nice quality of being rooted in ethereum and in sharing some of that security and so right this is kind of the State of Affairs in some sense and you know if I'm a user this like cute little little gerbil also generated all these most of these photos are generated actually um then you're you know going from one chain to another trying to like deposit withdraw it's like just it's just kind of it's just kind of chaos to be honest with you and you can kind of visualize this as a crazy like market right it's like a Marketplace and you're going from these different Sellers and you know maybe you go to this person you're transacting on this chain using this vendor and and behind you there's a bridge that just exploded and another one that just exploded and then you went to this other chain and and now you know oh they actually it's actually a rug pull like it is true and utter chaos right now this is not good this is not a user experience worth bragging about right this is just honestly very sad um but you know it's better than no one being able to transact which is the alternative because ethereum was just way too congested but we can do better we can do better and what if I told you what if I told you that there was a solution to this problem there was a solution where instead of going from one place to another everything is all in one place and you don't have to transact with all these different you know vendors you can instead trust you know transact with one trusted seller one trusted seller and you've got seamless Atomic checkout in this Market well it's the supermarket whoa oh my gosh okay this is a joke right we're not here for Supermarket technology um but it's just you know Super Market uh super chain um anyway really though really though I you know I can't help myself the J our chain should have these properties right we demand these properties that you know everything in one place a single trusted sellers you're not getting hacked all the time right we shouldn't have to bridge from one chain to another we shouldn't have to get hacked I mean my goodness that's a low bar um and also transaction fees should be cheap and sometimes pretty much free like that is legitimately it is not there is no technical blocker and so there is no reason why we should not achieve this don't fear though Don't Fear the op stack is here all right we finally got to the actual meet of the talk to an extent well State of Affairs kind of crazy absolute Madness but we can fix this how do we fix this well we can build standardized open source libraries that provide shared security so things are actually secured rooted in ethereum there are fallback mechanisms there are things that prevent terrible hacks also just the fact that it's standardized makes it way more secure because now there are way more eyes on it it's not just a one-off solution because that's how you get hacks Additionally you know composable right we need these systems to all work together you can swap out one module they're compatible with one another and additionally finally coordinated sequencing I won't talk about how incredibly that important that is but it is actually incredibly important for creating an experience now what is this experience that the user you know like at the end of the day right all of this technology is in service of building something that we can all use right I want to use a better product than we have today and so what is the user experience of this system well you actually with the compatibility that this you know the Share technology enables we can actually create a virtualized single super chain right we can actually interact with the system in a way where you're not having a bunch of user-facing bridging all that kind of stuff can be handled in the background right we can have robust modules that's insecure that ensure security and additionally it should be hella scalable with horizontally scalable some call it quote infinitely scalable but I feel like that's just like a Savage marketing term horizontally scalable so we can have near free transactions transactions that essentially cost the amount of money that it costs to run that transaction on a computer so it's like renting from AWS as opposed to paying surge pricing on Uber so we can realize this super chain we can realize it with open source technology shared standards and working together and we can make that happy experience for our happy gerbil now if we want to talk about how exactly the kind of like combination the virtualization of the super chain works you can kind of take a look at end game that has a bit of a hint at it and then there's even more talks that we can go into but I won't do it right now because we don't have enough time or at least so I thought but you can ask questions at the end um of the presentation so now we are past the intro maybe I needed all the time that we need that we have let's talk about the core of the op stack so this is not necessarily everything but this is the kind of bread and butter okay what is the OB sac again standardized open source modules for layer 2 Chains we are using it for of course optimism mainnet but it is open source therefore anyone can mess around now there are three key layers to this right any stack has some layers the consensus layer the execution layer and the settlement layer consensus that's how the chain gets the transaction the chain gets constructed the execution that's the virtual machine that is actually being you know executed over this chain of inputs and finally the settlement layer that's how withdrawals occur so if you look into layer one if you look closely with a magnifying glass you will see that layer one is actually made up of its own consensus layer and execution layer so this is a recent change that we've modularized layer one in the very same way that we're trying to modularize the layer 2 technology and the way that that works is that we have prism these consensus layer clients not just prism don't just use prism y'all we need diversity additionally we have execution layer clients like Geth and we have that same structure playing out in Layer Two as well now let's get into the nitty-gritty of the consensus layer execution layer and settlement layer what are these different things so first for the consensus layer we have two key modules two options that we can choose from we can either choose roll up which basically means that all the transaction data is fully available on chain or plasma now plasma got a bad rap back in the days it's just too early and now there's a million different terms for plasma like valadium validium all of these things the various things basically at the end of the day we should just call them data availability challenges um we have a consensus layer client that it has off-chain data with data availability challenges on chain so those are our two kind of like broad categories of consensus layer type deals additionally we've got execution layers so that is the evm the classic one right we've also got X extra fancy ones like this weird one in the middle that I'm kind of just like hinting at but not saying because I don't know if I should talk about it yet but anyway it's we've got other execution clients that are special purpose maybe for some games maybe not you know whatever um and then finally we have the settlement layer this is how things actually get withdrawn from the system this is how you kind of prove the withdrawal now notably I have here multi-sig fault and ZK proof I am writing this as though the settlement layer if you have a fault proof or a ZK proof that is you know kind of working but you still have a fallback to a multi-sig then because of lowest you know the the weakest link security at the end of the day you're still multi-sig and so that's why multi-sig is here obviously no one wants multisig to persist into the future but the reality of layer two right now is that things are being secured withdrawals are being secured by the multi-cigs which is you know it is it's better than it being secured by an insecure proof system so let's let's be thankful um anyway consensus layer execution layer and settlement layer right you can choose each one of these and you know if you choose this configuration then you'll end up with an evm equivalent optimistic roll up right this is the perfect Flagship for for an L2 but it's not necessarily the only configuration you might ever want and it does have different security trade-offs or withdrawal trade-offs right all of these things are trade-offs now additionally right eventually you'd want to plug in potentially a ZK roll-up a ZK proof system a ZK settlement layer and so what that means is that we can have an evm equivalent ZK roll-up and additionally because it is modular we can swap it in and swap it out so the same chain that was running a fault proof can without changing anything about a developer experience without changing anything about you know the nodes that people are uh running you can actually swap in a different proof system for withdrawals and so that means that we can get these like seamless upgrades and write compatible software actually in fact the key right the key to scaling up the production of software is defining really good abstraction layers and so you know this is actually more important than you might imagine because it allows people to work on different things in silos and still be compatible once they have done the incredible amount of work and zkps are an great example of something that's going to take a lot of work to make extremely inexpensive and let's continue so we've got the consensus layer right we can do things like layer three by layering in plasma with the evm and fall proofs right all of these things are options and even swap out the execution layer all of these you know configurations are valid but the key is that we should make sure that the way that they communicate the way that these layers communicate with one another is standardized so that we can all benefit from each other's Innovations and do build out the you know blockchain stack candidly in an open source and permissionless way so that is the core of the O pizzle stack izle so the Bedrock release we are finally at the section that section okay what is bedrock right Bedrock is a major step forward across two primary Dimensions so first off obviously it is the next upgrade to optimism Main net that is we are upgrading our main net if you deposit into optimism then that thing is going to be using Bedrock very very soon and that makes that's going to make it the most literally like the most secure the most scalable roll-up that is out there let's go so Bedrock is actually legitimately extremely extremely dope um the second thing is that it is a foundational IT Supplies the foundational op stack modules right these we built it out in this modular way already and in fact in the later talks you know with Josh with Etc we we're gonna we'll go into the details of like how these things actually fit together and what components we we built um so right we have a configuration of the op stack and we have all of these different packages which it is using right we have this op node which is the consensus layer kind of equivalent we have op get we even have op Aragon right this is literally two ethereum clients that are compatible additionally we've got all of these other you know Batcher proposer contracts we have Canon for fault proofs all of these things are you know built in this modular way and so here I'll go over into like more specific details of like where the major steps forward in modularity are so first off modular execution with the engine API so first I told I started this talk by saying how the consensus layer and the execution layer are actually being you know built out and were created for layer one development well what did we do well we swapped out the consensus layer and replaced it with the op node so now we're coming to consensus by using L1 consensus that's literally like the diff definition of Layer Two additionally we have the execution layer so we have get um but we can also swap in things like Aragon and it takes very little code to modify these execution layer clients to support layer twos and that is critical right code reuse is a key factor of security and these systems need to be more secure than any other system you've used let's let me tell you is it is these security requirements are in sync and so this also enables us to have a multi-client ecosystem we would never have made the merge upgrade we would never have done the merge upgrade without multiple clients because multiple clients catch divergences between them making the entire system more secure that's why the merge went through without any critical bug reports right that is literally the technology that the security technology they used was a multi-client ecosystem and so we need that very same thing for Layer Two and that is absolutely critical if we want to enable fault proofs for instance and I'll talk about that a little bit more later so yes additionally we can even have more fun and you know maybe it's not going to have a multi-climate ecosystem but we can input this like weird you know weird uh uh mystery uh VM and boom now we've got even more execution engines that we can use so so that is the first step right it's the engine API the second thing is modular derivation so first execution the second one is derivation or the consensus layer so in you know normal in back back in the good old days a year and something ago when we were riding our Roll-Ups we thought that we needed a bunch of smart contracts on layer one to make to actually derive the the roll up so essentially you take in L1 this function right is like the roll-up function it produces the layer two blocks and what we were doing is we were saying okay you need layer one and you need some smart contracts on layer one to do some like management for you and you know whatever whatever but this meant that the the system was actually really brittle it was really hard to upgrade because you always needed to maintain these layer 1 contracts but now what we're doing is we're consuming raw layer one blocks raw layer one block data to produce the layer 2 Chain so what does that actually mean it means that we can swap in because it's just raw like a raw stream of data we can swap in new data sources like eip4844 or even plasma right things like off-chain sources of data so this allows us to you know both a scale up you know be ready for when we're improving layer one because we're pushing forward eip4844 which is a major Improvement to layer one but we're also able to support things like layer three and finally modular proofs with Canon right Canon is it generates the execution Trace over the uh you know over the client and it allows us to prove that execution trades but we can prove in execution Trace with either fall proofs or ZK proofs right these two things totally work the CK proofs might be too expensive right now but that's something that we can work on over time and importantly right importantly Bedrock again supports multiple clients and multiple clients is incredibly important to support production high security chains and specifically to support fall proofs and ZK proofs without big bad upgrade keys right we need our upgrade keys to be you know upgrade and then you wait like two months because you can actually withdraw and we need them to make sure that the mechanism that allows people to withdraw from Layer Two in case there's a malicious upgrade we need to make sure that that mechanism will never break the only way to make sure that mechanism will never break is with multi-client support so there we go you know more information on that in our pragmatic path to decentralization because we need to get rid of those upgrade Keys we need to not be multi-sig Roll-Ups anyway great this you know this Evolution right the State of Affairs is madness with these Bridges going crazy in these different chains and this terrible user experience we're already making progress there right Bedrock release is fast approaching we're about to take a massive step forward in the op stack additionally we already have multiple op based chains so it's like not even it's this is not even like a oh you know you know we need an X we need more op chains like literally we accidentally had a people deploy opiates just because we were writing our software out in the open um and additionally we've got teams experimenting with bedrock pushing the boundaries of what was possible on chain right we're we're gonna break through even the scale like the scalability that we have today is not even close to what we're going to have tomorrow it's like it's like you don't think about the resource constraints on AWS unless you're a massive crazy you know team but if you don't really think about the scalability constraints on AWS as an average individual you should not be thinking about the scalability constraints as you know you're transacting or deploying dapps to a blockchain this is just the beginning right we are about to take over with the zombie horde of gerbils generated uh by artificial intelligence um we will take over the game and soon we will realize the final evolution of blockchain Walmart no I'm just kidding um we will finally realize the super thanks to the op stack because we're working together to solve the problems in a secure and scalable way hallelujah we're going to provide that good user experience to us because we're the users too you know and the rise of the super chain that's it and by the way um this is also a super chain uh image but including a geriable um and I just love the way that that these AIS or like Dolly specifically cannot spell it's so good anyway thanks everybody I guess we don't have that much time for questions but happy to answer them um oh this old stack is so let's go all right that's it I mean I don't know um I'm now in my room I still feel like I'm in my room um is there a place I should be looking for for like questions do we have like a couple a couple um like you know I don't know I don't even know I don't know where I am well I feel so alone wait am I oh it's because I turned off my mic because I can't hear Maybe hello okay fine I'll just talk then hey Carl sorry oh great no I think hi it's me um no I think uh I don't see any questions I think I think we're good how did you find such a cute dog photo well yeah that would be my question on Google all right let's move to Josh okay awesome Carl thank you so much I love your presentations you're so enthusiastic thank you you're awesome
Automatic transcript — names and jargon may be misspelled.