New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Blockchain Scalability: Optimism - Rise of the Superchain | ETHDenver 2023

Ethereum DenverMon, Oct 9, 2023, 12:00 AM

In this video, we delve deeper into the fascinating world of blockchain scalability for the decentralized web. Building upon a previous Defcon talk, Karl Floersch acknowledges that while the earlier session provided high-level insights and visuals, this talk will take a more detailed and in-depth approach. The problem of blockchain scalability has been an ongoing challenge since its inception, and it remains a pressing issue even in 2023. Throughout this presentation, we explore the complexities surrounding blockchain scalability and how it impacts the decentralized web. We examine various factors that contribute to this challenge and discuss potential solutions that have emerged over time. From exploring different consensus mechanisms to analyzing network congestion issues, we leave no stone unturned in our quest for understanding. Join us as we unravel the intricacies of blockchain scalability and gain valuable insights into its implications for the decentralized web. Stay tuned for an enlightening discussion on how this long-standing issue is being addressed by experts in the field. #blockchainscalability #decentralizedweb #buidl TLDR: The key idea of the video is that a super chain, consisting of multiple chains with added security and scalability, can solve the scalability problem of blockchain and enable the creation of a vibrant open source community in the decentralized web. 00:00 📈 Karl Floersch proposes the idea of a super chain to solve the scalability problem of blockchain and provide real value to people in the decentralized web. 02:25 📈 Developers can write code without worrying about underlying computers, allowing for easy composition of smart contracts and the creation of a vibrant open source community, while scalability technology in the Ethereum ecosystem is leading to the development of abstraction layers for globally scalable applications like Twitter. 05:28 🔗 The superchain is a network of multiple chains that adds security and scalability, abstracting away the underlying infrastructure, but collaboration from the blockchain industry is needed for this step. 08:51 🔑 The L1 sequencer in the Ethereum ecosystem does not forge transactions, but rather discards those with invalid signatures, ensuring the integrity of the L2 chain; generalized derivation functions enable scalability and isolation of chains. 12:30 📨 Cross-chain messaging enables the transfer of messages between different chains, facilitating actions like processing withdrawals from the red chain on Ethereum. 14:19 🔗 Messaging between different chains is achieved by verifying a proof system, allowing the blue chain to authenticate messages from the red chain, while proof systems help reduce compute requirements for verifying chains. 17:02 🔗 Infinite chains and chain messaging can be achieved through coordination between sequencers, addressing the bottleneck of data availability by adding L1 data availability or using the plasma protocol, resulting in a horizontally scalable super chain. 19:28 🌍 We can create a future where decentralized compute and open source software are used to fund public goods and build the open source internet.

Transcript

got way too many slides let's be honest this is either going to be unintelligible or unfinished let's do it okay so context first last step on this continuation of my Defcon talk about the super chain about the op stack basically that talk had a lot of like good context and good information that's kind of high level this talk this talk is you know that one had you know tons of nice little images all that stuff this one is going to be very in the weeds there's gonna be a lot of like detailed information so I'm gonna speak fast but you're gonna it's gonna be a lot it's gonna be a lot no fun allowed during this talk let's go Leroy Jenkins okay so super chain to the rescue right we're gonna talk about the super chain but what is the problem what's our problem statement well blockchain scalability is insufficient for the decentralized web today right that's of course what we're trying to solve and why is that meat congestion or arch nemesis this oh my God evil anyway blockchains don't scale didn't you did you know um right you're sending transactions you're trying to tweet you're just posting a tweet that's not gonna work you're not gonna put Twitter on the blockchain if your tweets are costing 13 16 to write games comma you know and anyway okay this is not new information right you know it's it's literally been the problem since the Genesis of the blockchain the first response to the Bitcoin white paper was something uh we very very much needless technology but the way I understand it as your proposal it does not seem to scale anyway um it's the inside joke okay 2018 that it's been a problem and it's 2023 that's a problem that's too many years of my life I mean I wasn't in at 2018 but it's been a lot of years okay but let's let's just open our minds for a second let's say oh this is not actually a problem what if things were different what would be possible what if it was more than just Doge memes what if we actually provided real value to real people and made people happy like those things um anyway what if we could scale to support literally the globe What would be possible well let me tell you I I this from a developer perspective just to start right this is underappreciated the evm is an insane Dane abstraction it is the ultimate serverless technology you can literally write your application logic as code you don't need to worry about the computers that it's running on because they're gas metered you can pay for your usage it's a really nice abstraction like genuinely a great one Additionally you when you are building with these smart contracts they actually compose together when I I know that the messages I sent from one contract will be received by the other I don't need to worry about inconsistent databases corruption all of that kind of stuff and additionally when I deploy my smart contract like for instance Hayden you know deployed unit swap he deploys this thing thousands of people are using it and he doesn't need to wake up in the middle of the night from devops problems and he also doesn't need to front the cost and like add ads to his website just to pay for the server cost like it's Madness anyway we would literally be able to liberate developers from that as well this is genuine value add to developers and when we build things that make developers give value to developers then we turn ecosystems that are like dying in our like web 2 lockdown Universe into a vibrant open source place where people are having fun people are building great ads and I just want to say that this image is actually in reverse because it's the very sad world and some block kills and this is what our sponsor thank you sponsor um okay anyway no just kidding uh okay Twitter right like I think this is this I'm gonna say something you're not gonna believe it but like literally building a horizontally scalable Twitter that scales to the globe would be a literal like hackathon two-day kind of project it is crazy if we get this abstraction right because we scale compute and once we scale compute everyone can compute okay does it compute well let me tell you okay it still can be realized like that future that Vision that that thing we're getting to it's still possible Right we've been building out eth2 plasma group working on scalability Tech for an incredibly long period of time and it has been a massive ecosystem of people people in this room working on scalability Tech and that has led to abstraction layers that actually work at scaling blockchains right and when things are beautifully done we're getting to a point where we have the abstraction layers just like for the network stack we're building these things out when things are beautifully done there's usually a well thought out set of abstraction layers highly recommend this podcast okay right we have ethereum L2 we've got tons of contributors and it's starting to become clear what's becoming clear well congestion versus the super chain let's go all right that's our word for it you know the super chain okay it's more than one chain right first off what is the super chain let's get a little a picture okay it's not it's more than one chain that's for sure and why is that well it's pretty simple to see as the chain Grows Right it just becomes impossible to run it on a computer simple all right done okay but it's also not multiple chains in the traditional sense because each chain is going to be adding security like if we do it in a bespoke model where there's just different validators all that kind of stuff every time you add to the network is adding existential risk as well as it makes it incredibly hard to deploy These Chains we want chains to be spun up in two seconds like we want literally a chain in my web browser actually two seconds is hella long like two two milliseconds um to spin up a chain Real Talk anyway we need to commoditize chain infrastructure at that point then we can Auto scale chains and we really see what's happening so it's not mono chain it's not multi-chain it's super chain let's go all right super chain properties how much time okay I got five okay great great I'm not going to talk about this super in depth I they're gonna I'll post the slide somewhere you can read it but anyway point being 1l1 one shared Bridge standard security standard Tech stack all of these chains well they're all these op chains let's go okay roughly right ethereum optimism Bridge lots of chains pretty simple that's it you're you're experts okay op chains oh importantly when we get to this point we will be able to deploy to the super chain we're not going to be deploying to like this chain or that chain it'll be years but the developer tooling should get good enough that we can abstract away all of this underlying infrastructure just like we went from ec2 to Docker to kubernetes Etc all right warning this step does not exist yet if that was not clear um it's coming soon but you know to a theater near you and guess what you can help too because this is this is us right like this is the blockchain industry that we're talking about here okay so very happy okay this is where it's gonna get gonna get Gnarly right we're gonna start off by breaking it into small chunks and composing those chunks together just like these abstraction layers first abstraction that we're going to talk about is chain derivation this is how you get the chain okay this is the process by which you derive the chain information the L2 chain okay how does it work well L2 chains are actually defined by the derivation function over in L1 over ethereum so what does that look like in visual form because I like visuals well it means that you take ethereum you call you put it in this function you get out you know optimism mainnet for instance then users submit deposits or transactions to ethereum then boom it becomes it gets reflected in the red you know optimism op chain Additionally you might send to a sequencer your transaction right there now what is the sequence to do sequencer sends it to ethereum and now boom you derive it again back to the op chain so all of this stuff is based on L1 there's no auxiliary data right that's very important it's pretty simple okay I'm gonna dispel a myth it was totally unrelated but I have to do it I hate this myth this is the myth sequencer can forge transactions this is false oh wait I spoiled it [ __ ] anyway we're not supposed to spoil these things okay let's let's look through an example right Alice signs of transactions sends it over to the sequencer sequencer gets the transaction and changes it now the transaction has an invalid signature so the sequencer posts that transaction to ethereum all right you know the sequencer's like I'm gonna get the money then in the derivation function it picks up the fact that it's an invalid signature and so what does it do it throws away the transaction it doesn't affect anything so the L2 chain is untouched right that is an important thing myth busted let's go okay important important side note okay we're going to do this I'll roll up derivation functions are just all the Roll-Ups that we have today right from optimism to the various Forks to everything they are all just different derivation functions over ethereum what does that really mean well right all of them are slightly slightly different we've defined derived the red chain then we derive the blue chain then we derive the darker blue chain all of these chains and all of their sequencers are submitting transactions to ethereum deriving different chains so are these chains just are they the same like what you know what is the relationship it's kind of weird they're all just indexes over ethereum very important concept so if I'm Alice and I want to sync the red chain then what do I do I sync ethereum then boom I think the red chain I derive the red chain and if I want to sync the blue chain do the same process and the same process for the darker blue that's why ethereum scales right you're only syncing the chains that you need that that picture of the computer blowing up not a thing all right so that's like that's status quo but let's go let's go super let's go super let's get to infinite chains that's crazy okay well what if we had a generalized derivation function one that not only took in the L1 but just a chain config and by that way that chain configuration can even be defined on L1 in a smart contract in fact it should be this plus a standard Bridge standard addressing gives us the ability to based on the configuration the chain config derive different chains automatically literally all the possible configurations of the chains can be derived in this like counter factual sense okay what does that kind of mean it's kind of like you know a kaleidoscope where as you turn the Little Wheel you're seeing a different image of layer one and you know you can look deep in and you start seeing whoa It's trippy it's crazy like this is the crazy complexity that is possible with ethereum just looking at it in different ways driving different chains you got infinite chains here folks infinite chains practically infinite there's finite number of numbers anyway okay I don't believe in Infinity okay anyway first concept right first concept we look at that kaleidoscope and we get infinite chance it didn't describe didn't depict the infinity there but but it's pretty good right but each chain is isolated right now we've got a second key concept that is cross chain messaging okay so what is cross-chain messaging well that is the process by which a chain sends a message to another chain we can kind of look at the analog version of this where Alice is writing a letter she just writes a letter she signs it she writes the you know address the the signature and her message and then she wants to send it to Bob so she gives it to Mo the male person and mo transfers it over and boom Mo checks that it's two or Bob sorry checks that it's two Bob and checks that the signature checks out and then reads the message okay so what if I told you those Al zimbab were actually chains what if I told you they were chains all along okay really what happened in the true version of the story is Mo the male person is actually the user saying Hey I want to migrate my tokens over so Alice the chain Alice creates a message saying hey you know I won't you should Bob you should definitely change those uh you know you should create some tokens for Moe's trying to move the chains the tokens over so Mo then takes that message and reads relays it over to Bob the Bob chain and Bob the Bob chain checks the two make sure it's for Bob and checks the proof and then reads the message and acts on it that is the fundamental thing that is happening when we do cross-chain messaging okay but there's a little bit more right this is an example right we have the red chain over here we've got the message Alice or Mo I guess relays that message back to ethereum and the withdrawal is processed all right so additionally oh yeah this one okay so this is how we get messaging between two different chains two different op chains we check the two we check the message and we check the proof but the proof is very hard to do right this is the the key the complexity here is all in how do you implement this proof system but let me just give you the intuition for how all proof systems on the super chain in some sense are verified okay so the red chain wants to send a message to the blue chain what do we do well the blue chain has this this message needs to verify the proof but does not have access to any of the chain state of the red chain what does blue chain do well blue chain knows that it is being rooted into ethereum so it will actually run the red chain derivation function which is based on the red chains address the red chains chain ID then because there's a standard derivation function then it will derive the red chain block by block until it finds the message and then verifies its authenticity and can then act on it this is what this is really what is happening with all of these proof systems now you might notice the problem though right that was so easy why is that hard well really Chain's fully verifying each other is not scalable it just ends up looking like one chain that is that doesn't actually scale but that's why we have proof systems which take this long and you know huge bit of compute and then shrinks it down into a small amount of cute compute based on either random sampling assumptions or based on economic guarantees and those two categories are also reflected in our fault proofs versus validity proofs right fault proofs you prove it by proving non-existence of counter evidence and a validity proof you prove it up front Okay problem is with fault proof is high latency validity proof is low latency and guess what by the way the OB Sac the super chain it uses all the proofs just remember it's not just fall Bruce okay so here's a list of a bunch of different proof types with various trade-offs now I'm not going to go into every one but tldr you have a wide number of proofs to choose from some still are work in progress and us as an industry must basically create all of these things okay so critically right all of these proofs work on every OB chain all of these chains that you've derived they can accept any kind of proof whatever fits the circumstance okay so concept two re recap we've got infinite chains and chain messaging now I'm going to go incredibly fast because I have two minutes left and I have like 30 billion more slides okay synchronous messages I'm just you're gonna breathe in and just soak in these slides okay watch this whoa these different chains of different sequencers there's lots of configurable sequencers we can experiment with sequencing protocols but we need these chains to communicate atomically like Splash loans and the problem is they don't uh communicate atomically normally because they need to coordinate both messages have to happen at the same time that requires sequencers to work together that shared sequencing now the sequencers are working together sending one message and boom it hits the chains all right we got synchronization now that was fast all right last concept data availability it's a final countdown okay notice we still have a bottleneck I kind of lied to y'all right we have infinite chains but we don't have infinite data so that becomes our bottleneck what do we do well we can add one more L1 data availability with eip44 or we can add a plasma protocol throwback y'all I've been telling you it was coming back but y'all don't believe the headlines are so ridiculous anyway let's go so you can have chains that are alternative data availability you hash the alternative data availability kind of chains and then now you can extend what ethereum has in terms of its data capacity now you get infinite chains and infinite data because the data is coming off chain you get to horizontally scale that and boom now I mean it's not infinite data right like of course if they're finite number of computers but like come on okay anyway great there's a catch you know you need data availability challenges you don't get quite as much security as Roll-Ups but that's okay and you can take a look get the slides to understand what I actually meant there okay plasma and Roll-Ups those are the two categories and we're good that's our final recap so infinite chains cross chain messaging synchronization and infinite data kind of infinite kind of infinite chains everything's finite we live in a finite universe and we have spawned the super chain and congestion comes through pow we got that thing taken care of we realize that Vision oh my gosh more info about how this works at the super chain explainer y'all take a look for sure and I'll just say a few more things this future that we can create where we really scale decentralized compute Atomic compute it is possible the whole world can use it and guess what we will use that to fund public goods to fund open source software so we take over the Internet SEC not only with decentralized compute but with open source software at every layer we're going to build the open source internet y'all and spawn ethers Phoenix and that's why we have the optimism Collective and you know that's how we basically birth optimism Collective and by the way welcome to the collective you're part of the collective you'd be like yo I think this and I'm part of the collective tell your friends they're part of the collective too we're Collective me and you and with that I do look at that yeah anyway that's fine foreign [Applause] [Music]

Automatic transcript — names and jargon may be misspelled.