#DappCon22 : Day 2 - How to Scale a Blockchain: Motivating the Ethereum Modular Design, Dietrichs
DappCon 2022 · September 2022 · 22:55
Dietrichs explains the motivation behind Ethereum's modular design at DappCon 2022, covering how separating execution, consensus, and data availability into distinct layers can help the network scale. The talk situates this modular approach within the broader rollup-centric roadmap for Ethereum scaling.
Speakers
Topics
From DappCon 2022, hosted by Dappcon Berlin.
Transcript
everyone let me just figure out the tech here and then off we go so um yeah my name is anscom with the ethereum foundation I just wanted to basically take the opportunity to um give a bit more of like a broader overview talk um because I do think that oftentimes the ethereum roadmap is a little bit opaque to to a lot of people where we kind of end up making making decisions that it's not always quite clear like where we're coming from and so I thought I just basically could try to give a little bit of this you know General context for how we think about the future um so basically I I was I'm trying to structure this in two parts so the first part is just Why Roll-Ups we've been talking about Roll-Ups for a long time
now I mean the last talk was about roll ups a lot of talks here about Roll-Ups we've had this roll-up Century roadmap for two years now why is that why why are they really a good idea at least you know in our opinion and then basically uh transition data into the second part where I want to basically extend that and to talk about like what does that mean then for the the broader kind of future of blockchains and specifically This this term like modular blockchains that you might have heard uh thrown around quite a bit recently as well um so let's start why Roll-Ups um and uh for that first of all I kind of want to I'm not super happy with the terminology we always use like layer one layer two that's very descriptive but it doesn't quite explain what's like why is this happening so instead what I want to
just do is I want to call these changes execution change like every normal blockchain just like that that is basically useful for users is an execution chain so we could you know you can see take Bitcoin the very first special purpose execution chain the special purpose being you know payments or value that kind of thing then ethereum the first general purpose um execution chain and what all these execution chains and by now we have like thousands of them have in common is that basically they all want to have like maximum functionality and maximum throughput but they have to trade that off against security right and and to really kind of drive that point home of like how that really is a quite fundamental trade-off um I really like this specific graph so you have like the cost to run a full
node uh on one axis and then the throughput that your system can can provide on the other and if you look at say you know the the early blockchains like if Bitcoin you have ethereum and basically both kind of down there where the cost is not like too high like ideally every everyone wants to you know that's kind of it's of course an important qualifier and everyone who wants to can run their own full node locally but that also means that the throughput of these chains is fundamentally limited right and and and that is that is not just some like inefficiency of the of the algorithm that's that that's like really one of these crucial points like this whole approach of everyone validating everyone's transactions it just fundamentally doesn't scale right we can we can make the virtual machine like only so much more efficient at some
point basically if you personally verify every time someone on the other side of the world wants to buy a coffee this just doesn't scale right and so how do how people try to to solve this in the in the past so um I just basically you know picked one arbitrary other example like a Solana kind of placed this on the graph as well and it there's more throughput right so that's kind of that's a good thing definitely but it comes at a cost and the cost here is that basically they just you know run it on more powerful Hardware you can always linearly scale but just basically throwing more compute at it and the problem there is that now all of a sudden it's everyone who has the money um can still run um run these uh the the like a full node on on a data center basically and that
does give you the head throughput but the problem is if you're a normal user right normal meaning that you can't afford that full node on a data center you just don't want to spend like a big big amount of money on that then basically what happens if at any point anyone just basically tries to to propose an invalid State transition if there's like a 51 attack or something well basically you have two choices either you just go with the majority you just trust that the majority of nodes you ask what's the current state that they tell you the truth in that case you're basically just vulnerable to them rewriting the rules or what you can always do is you can just hold and then you know go on Twitter and see like who's right you know which notes were telling the truth which ones weren't but
you don't really you don't have a choice anymore right you can't you can't just locally verify so how do we basically what what's our goal here how do we how do we want to where do we want to be in like 20 years in five years ten years whatever you know optimistic you are um and that's basically over here right that's the the Unicorn Zone um that's where and it's not not supposed to be like a uni swap like I gave this topic once and people are like oh the uni swap no no this is just you know unicorn ethereum unicorn whatever um so and the idea is like you definitely want this property where like par to the left where everyone can trustlessly run their own node contestantly verify but you also want very high throughput basically The Best of Both Worlds right and and how how on
Earth can we get there right like how how can we make this make this jump um and basically for that I just want to briefly come back to to the to the Islam example and like look at this down here right this the the the the main downside of this of this high throughput like high computation requirement node is really that if there ever is a disagreement you have to manually resolve it so you know we are computer scientists after all so what if we just try to automate that that's basically the whole idea behind Roll-Ups right what if we just take this and instead of manually resolving it we have some sort of automated system now that system does have to run on like a separate you know layer but it but in that case basically what you get is an optimistic roll up
right it's still that's why I put the same logo there it's still an execution chain right it's basically yet another blockchain it it's just like a technicality that it's the layer 2 or whatever you call it it's just a normal bug chain it the but the way you run it is that you apply the changes optimistically and then anyone can submit a fraud proof and the fraud proof again that's basically that's just this disagreement here it's just formalized into a machine readable argument so you can just basically go to the machine and you can tell it this state transition was invalid and then basically these fraud proofs are supposed to be automatically resolved on a settlement platform so the only thing you need here to basically get this amazing thing we want is you need some sort of settlement platform and you know that's kind of
what I'm going at in the future in a second here but then also just to shout out that of course we have this alternative approach and that's I don't know it's it's almost unreasonable that it even exists it's one of these cryptographic magic things that just falls out of the sky you just look at look at it very hard and all of a sudden it turns out that you know you can just um throw the magic on there and like basically that gives you this alternative approach where instead of having to wait for someone to do to try and commit fraud and then basically catch them and revert the change you can also design these systems that where you can just basically automatically prove that a certain transition was valid without having to fully execute it which basically this is just you know pure computational compression it's it's it's
it's it's really quite impressive and that this is possible at all but again you need the settlement layer where you can can execute um this proof and so then one other thing I just briefly wanted to mention because it's really quite important and people sometimes miss this is It's Not only that you have to verify this proof there's one other aspect that's really crucially important and that's why uh these days like if you've ever heard the term dunk sharding or something that's where this is coming from problem with these Roll-Ups is if you no longer run the full chain yourself you only execute these proofs there's one crucial new aspect and that is that data has to be available and what do I mean by that well if you have an optimistic grow up and someone basically tries to commit fraud the only reason that
basically we can catch this and we can prevent this is that basically someone has to be able to look at what is happening you know and that maybe expensive data center machine or something and then be able to see wait this was incorrect let me construct a fraud proof if they never get the data if they never see like what is the claim transition they only see you know someone claimed I took the state and I put it into this other state but I don't tell you how then there's no way to prove fraud right and so basically it's crucially important now that the data is still available even though users don't want to download it because again that's kind of expensive that you want to somehow check that it is available and same with ZK Roll Up is not quite as bad but you can also still like do really
bad things if the data is not available so what we need is we also need this extra feature it's not only about settlement it's Auto also about data availability um and we can we can scale this as well with nice nice techniques um so now basically with that that hopefully kind of motivates a little bit like why do we want Roll-Ups why are Roll-Ups really kind of this amazing thing that gets us to this unicorn Zone at least hopefully in the future now what does it mean for the future of blockchains how will the architecture look like so that's basically now where there's a modular Vision um comes in um so I really try to go all in on the pictures here because usually they're lacking a little on my talk so uh hopefully I didn't overshoot but let's see um so this is basically just you know
how I want to visualize a normal you know Legacy kind of style blockchain so even you know ethereum today kinda so it's like or at least you know two three years ago so it's basically just you know its own execution chain and it has its own security that's what that's supposed to mean and it's just you know talking along and now you basically want to throw these new amazing capabilities at it and see what happens basically so we have like settlement with data availability and one very natural thing because you know Roll-Ups need both anyway is to just bundle them so that gets us what we call like a settlement chain so settlement chain is basically specialized in just providing these like in a very efficient way these these specific types of functionality and then the moment you got this you basically now instead of basically having to run
these two independent chains with their own security what you can just do is you can just take this execution chain and you can basically just settle it on top of that settlement chain and as you can see by all of a sudden basically it doesn't need this its own security anymore right because it just gets that for free from the base chain um and this is basically the most naive thing you can do you can basically just take the settlement module and you can basically apply like give Every Chain its own settlement module right so that's what we kind of call it and try and roll up so you have like um you could you could imagine you know Solana has its own settlement chain ethereum has its own settlement chain like everyone basically just runs their own settlement chain and so you have like the full chain nodes that are quite
expensive to run and then you have the settlement chain nodes that give you the security that are quite cheap to run um and what that would get us to would be this world that's kind of like whatever every time you kind of hear like about the multi-chain future that kind of thing that's basically what that could look like and it's it's very much a plausible future so basically um even though our community ethereum belief that this is not the most likely outcome at least like is it kind of the how most of the future will look like this is very much a plausible outcome so basically if all these independent Sovereign chains and they all kind of talk to each other because users do want to cross you know basically interact across multiple chains um but there are quite a few uh um a downside so one one is to state that
it's uh fracturing the security so as you can see all these little logs they're all quite small basically everyone has their own security budget and that means that the amount of activity you can put on any single chain is limited because you can never basically go above its security level and every time like one of these links breaks and basically like um that specific chain is no longer secure basically um also the bridges um that's one of these kind of fundamental problems with with Bridges where like if you bridge two separate independent security zones you basically always have to trust both separately so basically you always get the week of the true security is which is again like not not ideal and then also like you're just basically duplicating a lot of complexity I mean of course ideally you'd have like kind of out of the box
settlement functionality but still it's it's a lot of duplicated functionality so then what kind of alternative view of a vision like do we have and of course I mean the future will probably end up looking somewhat hybrid but you know just to make the most extreme at the point that would be the gentleman chain so in this case you have like a chain where one chain that provides settlement and data availability and it has like a lot of security and um then you have like a bunch of different uh roll ups on top but again these Roll-Ups it's just a technicality to call them roller player too they're just their own blockchains that happen to you know all be anchored to the same same same gentleman uh settlement chain um and and and that's with both data and settlement there are other systems so like for example Celestia if you're
aware of that they basically only want to provide data availability so then you would basically just settle the the the orange arrow on them and then basically the blue one would say independent it has some trade-offs on the security side but that's basically this is the most clean Other Extreme where you basically you have one settlement chain use it for both and the nice thing that gives you is that you have shared security across all the rollups people sometimes say that security is for free that's not quite right because it does like the more activity you have on top of a system the more the security is trained so if you use a settlement system and you're the only user then basically you only worry about your own activity but if it's if there are 20 users and of course also like you know if the
cumulative activity is like high enough that it is a Temptation for someone to try and attack that's still a problem but at least you have pooled security and that's really important right as long as the the the combined Securities is good enough to cover the combined activity basically you're good and then also the nice thing is that because you're you have like a shared source of Truth all the bridges can in theory be secure I mean modulo implementation bugs of course um which right now is the main source for bugs but but still so then um kind of for the last few minutes here let's let's talk about like how what does that actually mean for ethereum like in in these picture terms where will kind of how will ethereum look like in the future um so start with the past like again
ethereum started it's just its own you know execution chain nothing more they won't get roll ups not you know the other thing proof of work security and you know that's kind of the ethereum from three four years ago um then basically we go to ethereum's present um we already now have these basically it turns out you can you can use the existing ethereum chain and basically as some sort of like hybrid system where it's it's mostly still an execution chain for for end users but also it has this settlement capabilities you know because it's a general purpose chain you can also use it to run fraud proofs you can use it to run um ZK proofs um kind of well enough and then also it has some very limited data availability um and capabilities today and and very
limited is what I'm saying I'm going to show if you like how familiar are with the technical details but basically we have this concept of call data on ethereum you can use that to just shove a bunch of data onto the chain it's very expensive though so this is really that's why this logo is like so small because today's ethereum really doesn't provide great data availability capabilities yet um and so because basically we have this these things we already have some first Roll-Ups on ethereum and we are very happy to you know house them um with the The Limited capabilities we have today um and then we also serve and this is particularly relevant these days you know we have this other empty chain that uh and we have the next slide where this is going to disappear and you know like give it two more days but uh that is the
beacon chain and for now Beacon chain doesn't really have any purpose it's basically just an empty chain but as you can see you know there's much better security than an improved work chain and that's kind of what it's mainly for so then what's our next step the merge tomorrow well I was I was thinking when Wednesday night when I was making this slide now it looks like Thursday morning so it's maybe two days from now but anyway the merge you know it's going to happen it's going to be great um um and then basically that what that means is that it upgrades our security and then just if you can see like this little little box this the the the the lock got even bigger after the merge so I want to talk about like why where does all this extra security come from basically just as a quick aside you know
so a side note on security like where does it come from first of all we have the upgrade proof of work to proof stake uh again people I don't know if you open Twitter you know mistake already made but like um you see a lot of conflicting views on this of course we are very much convinced that this is the way to go in terms of security a it's just more efficient just because is a very basic point for work mining basically you have to offset the entire cost that the operation basically causes to The Miner basically have to offset the cost for buying the equipment you have to offset the energy so if it's offset the entire capital investment whereas on proof stake you only have to offset the lost interest that they could earn with the ethereum otherwise otherwise right so you could still get
the full benefit of the capital used but you only have to offset the interest which is like much more efficient so that's like a 10x right there or like a 20x or whatnot and then it's also more effective because improved stake fundamentally whenever someone tries to take the chain you know exactly who that is and you can punish them deliberately like and and selectively where some proof of work you can't punish individual miners so that's why we really like this a proof of proof of stake from security point of view and then there's that other point that I just want to briefly mention it a little bit more out there so if that's not your kind of cup of tea then please you know excuse me for making this point but we have this other flywheel effect where like with the end of proof of work we
have no more mining rewards that means that we have improved monetary properties for each the asset which ex which we hope might mean that we have like a higher expected monetary premium um that is might accrue in the long-term future which would give it like a higher market cap which would mean we could buy more security it's like an overall absolute level so that's again that's optional you know this is our main argument that the top one but if you happen to be into this um and I kind of like the whole ultrasound money situation so then uh that might be like a nice second argument and that's why I drew the Box even bigger but again optional so then I bringing this back uh we have the merge um just very briefly in terms of future
upgrades and I'm not sure if uh how I'm in the time in time uh my watch doesn't work anyway I hope I'm still kind of okay um so um it's it's basically basically done so just briefly give you like a brief um expectation so like again as we're saying we don't have amazing datability yet so we have this upgrade called Product shouting that just will give us a little bit better data and then um hopefully soon we also have full dunk shouting which you know that that will basically get us to this world where we have like full full-on highly scaled scale data um and then um basically with that uh I think I'll just skip over this I just wanted to briefly say like what what exactly kind of is the future of of of it one and
like um you know do find up I'll put the slides on Twitter so if you want to read this in in more detail but basically there's still a lot of variability like we could actually even do this we could pull it back out we can the nice thing with modularity is just it's Plug and Play like we don't know exactly where we're going yet but like there are a lot of interesting different alternative like variants of of of this future and the future of the evm likewise is like very much open well like these future a highly scalable blockchains event based or not we're going to see you know we're we're doing our best to support support this kind of future we have a lot of research past research on this that that's still very helpful for evm-based Roll-Ups but also there will be non-evm-based Roll-Ups you could even I
think something like Solana again they will add at some point they'll add some sort of settlement functionality either like as a sovereign roll-up maybe they'll even settle on top of ethereum I don't know um but you know if they end up winning out that's fine as well like again we are not like we of course we're rooting for the evm but it's by no means guaranteed that the evm will be the dominant um kind of execution chain of the execution VM of the future um and with that just like as a quick summary basically uh let's see so I also could I guess I always look there anyway so summary uh traditional blockchains uh have to always trade off you know this was the graph in the beginning security and scalability uh roll ups fundamentally solve this it's fundamentally different
from normal chains and it's fundamentally different even from these highly scalable layer ones that you know you always hear about today that just don't care about the the security side of things um and they solve this by Outsourcing the security to the settlement chain it's not again it's not free but it's pooled which is like um amazing and you can run these very lightweight settlement nodes and get full security guarantees ethereum's vision is within this to become the primary settlement chain right that's kind of again we are very much looking forward to this sprawling future where basically we will probably see all these different experiments run but we def we very much expect and predict that that they will we'll end up with one dominant settlement chain and we're basically trying to provide the the service and we're still very much at the beginning
of this transformation right right now Roll-Ups are still in the infancy um a lot of what this will actually mean for the ecosystem is yet to you know to be determined I think um any Theory might still also have execution chain Ambitions of their own right so we're not necessarily going to turn only into settlement chain let's see what the future holds right but this is our primary focus for now and with that that's it um come talk to me thank you so much we we have time for one but really really good question think twice is it a good one totally all right okay let's do this one [Laughter] thanks for the presentation and uh I I
totally like the idea about the shared settlement chain the only uh caveat being uh I mean well uh it cannot be said enough that you know having a unified source of security that definitely brings us advantages in standardization but it also gives like a single vulnerable basically an attack Vector because uh think of the hard bleed that happened with the SSL so how does that you know interplay with this shared security you know standardized security but also a single attack vector and with the TV locked and plenty full of the chains it will be there only when yeah no that's I think that's a really good point um I mean I think at the end of the day basically
um it's always easier to try and mitigate these kind of concerns within this the kind of the single settlement chain framework so for example what what what's what's been really one of the leading design um considerations of ethereum in the past has been this this multi-client approach right and so that's specifically like why we are doing this and why like almost no other chain is doing this because we really want to visit have like full redundancy and specifically because like it could always be that there's a client that has some sort of bug in it and and we really don't want the entire chain to fail uh to have like the single point of failure so um you can always kind of try and add back redundancy within within the the system architecture I think that basically because you really want these
properties that you get from a shared source of security I think it's always the the more practical approach to go but again I definitely think this it's very plausible that we end up in a world where um some communities decide that they want to stay Sovereign so for example I listen to a podcast with zuku from zcash the other day and he was saying that he's somewhat skeptical of this for now and they they might choose to even at greater cost and slightly weaker security guarantees to stay their own Sovereign system because they really really value that Independence and that's perfectly fine thank you thank you thank you round of applause [Applause]