Vitalik's roadmap explained by a dev by Lion dapplion (@dapplion)
ETHDubai 2023 · 16 Mar 2023 · 22:01
Lion dapplion explains Vitalik’s Ethereum roadmap and upcoming development directions.
Speakers
Topics
From ETHDubai 2023, hosted by DeFi Dubai.
Transcript
thank you thank you everyone thank you so much for introduction so um lodestar I also help coordinate forks and nurses chain and as being part of lordstar my job is to implement the ethereum consensus roadmap so I spend a fair amount of time thinking and looking at the roadmap and many of you have seen these teats by vitalik there is a lot going on here but this is kind of a summary of what's going to happen in ethereum research in the next five to ten years so I want to look today at what are the items that are actually close to implementation and kind of think about them and how they can impact you so how do I actually know what's going to
happen next well obviously every day we have stand up with our CEO vitalik and he tell us what to do here sometimes he yells at us because we are implementing things way too slow um but yeah it's just kidding um ethereum protocol is very decentralized including the protocol layer so there are many many entities that coordinate in a lose way researchers implementers and community members but how do we actually govern ourselves well it's through rough consensus so through off chain means like conferences forums crypto Twitter we shape opinion into getting consensus where eventually in all core web calls we do the call to
actually Implement features so more formally that structure around the EIP process so first of all the moon math Gods give us the crypto Primitives to build rough ideas so an eth research post may show up proposing an idea that idea then is iterated and when it gets a point of maturity where we think it's safe the incentives are sound it doesn't introduce any attack vectors it's suspect as a final thing that then it can be considered for inclusion that's when the blue box starts and that's what concerns me as an implementer we then take this feature implement it make sure again it's safe it doesn't introduce any like vectors
the network is sound and eventually when we have enough implementations we go into testing and if you're testing a sound production so the key concept I want to explain today is this idea of the trade-off space so the ethereum protocol is very complex and you have to understand that every feature adds more and more cost to the protocol everything we add we have to maintain forever so it's very important that we are sure that whatever we input makes sound and the trade-offs are correct um it's also important to know that we have scarce Human Resources like we have a lot of client teams each of them have different throughputs and at even at the research level we have so many options
so it's important to make sure that we know which is the right one also everything takes forever to do so if we say let's do this one like in the next Fork that may mean like one or two years down the line um so that's something we want to consider too cool so going back to the original roadmap there is too much things here let's drop everything that's in the past now let's drop externalities like L2 staff and now let's drop everything that's not expect so yeah much much shorter list so my goal for this talk like with withdrawals wrapping up is studying what I should spend next what I should tell
my team to do next so diving through the right hall of ethereum research has been absolutely fascinating and I want to kind of expose all of this complexity to you to show how good competing ideas with unique trade-offs X like you can think about them today so as a silly exercise we're gonna try to complete this roadmap and understand all of these backlog items how do they relate to each other what are their trade-offs what we want to do first when what me we may not want to do at all so let's do it so first item the merge the merge was the first and longest running item of the world map it's been on the works in Genesis I assume all of
you know what what that is about so I want to take this opportunity to celebrate once more we did the merge we did last year it was a huge achievement so I want to congratulate everyone that participates and massive shout out to Alfie who did this crazy nft and I'm also on it so that's pretty cool cool so going back to the merge track let's drop everything that's non-actionable right now and we stay with this smaller list so we're going to focus first on secret leader election so what's that about well with the merge and proof of stake a noble problem was introduced the blog proposer is known in advance and that's a huge huge issue
if you are interested in taking down ethereum's liveness or you want to steal Meb if you lost the proposal that can be beneficial for you and the problem here is that with proof of work you don't know who the proposal is so if you want to take down the network you have to kill all the Space Invaders but with proof of stake it's like here I'm gonna propose the block so that's an issue because you just kill that host and then you take down the network so what nssc is going to do is going to introduce anonymity at the consensus layer and just very briefly for somebody how that's going to work is we're going to pick a random set of candidates do this pre-selected list then Shuffle it with zero knowledge proofs and then from
the final list we're gonna pick the proposals and the key here is that we don't Shuffle proposers but we Shuffle commitments zero knowledge proof commitments so only the proposer knows who's gonna propose next so up until when the block is providing for the network no one knows who've proposed that blog so that's pretty pretty cool like that's Moon math at in steroids and George has been working on this design for a while and whisk is good like it does the job it has better been better by researchers we have other competing ideas that are not that good like vitalik proposes a simpler one but it doesn't work um there is another one that it's not
single and that has huge four Choice implications but the problem is whisk is extremely expensive it triples the state size it introduces novel cryptography to the consensus layer everyone will have to produce and verify your knowledge proofs so this is an interesting point on the trade of space where we won this but it's so expensive that we are not sure if it's enough to justify the costs so in my honest opinion I think we should go for it but that's up to the community to decide if we are going to do it or not or something better can happen during the down the line cool so that was single six election let's go for the next one in protocol
deposits so what's that about well to participate in the Bitcoin chain you need to stake some if and you do that sending a deposit to the deposit contract how that worked before the merge is all the nodes in the beacon chain listen for deposits so it was kind of like a bridge to a side chain and that comes with a lot of security complications there was this incident on magnet by prison that took down a bunch of nodes so that's really bad and now we have the opportunity to get rid of of this thing with a much much better design that it's simpler so here the trade-off space is fantastic it's almost no cost and we
have fantastic benefits so you say why didn't we do that in the first place well it was not possible we had to do the merge first and then we do withdrawals and then we do eip4844 so now we have kind of a break so we should go for it so next up we have the search and search is the dramatic rise in transactions per second that scaling will enable so I hope you paid attention on angskar call and you know everything I'm going to talk about here but in summary scaling means doing less stuff in L1 so you move things too L2 and also each node on L1 has to do less stuff so you shard
in practice the design we have settled for now is dunk sharding we used to have more complicated constructions and now after going for the roll up centering roadmap we have something that's very elegant and we could actually do so the consensus side of it is solved but we have these bad boys like signal in red which are heavy complex problems and networking that are not solved yet and this is blocking the roadmap so just to give you a quick idea of why this is complicated we want to implement something like ipfs but where we have very very high security guarantees in summary datability sampling means
sampling something at random then finding who has it and then asking that to give you the data but there are so many problems what if you have adversarials and Route you to the wrong node what if you ask the provider of data and the data says doesn't have the data how can you prove that the custodian didn't have the data and you're not lying there are a lot of fascinating Game Theory games here that have to be solved and we can do it we will do it but it takes time to come to a solution that's elegant enough and securely enough to consider that we can ship it through production so as Ansgar said the compromise and I think it's brilliant is we have the consensus part solved so let's do that
first that's how proton line starting happened so we will Implement everything that we know that is sound today we hope to figure the networking part later and then we'll do the full thing cool so next one scorch sounds funny I I love this name so much it's brilliant so yeah what's up with Scourge so Scorch is the goal to have canadiable neutrality at the base layer and as indifference I'm going to skip really quickly about what's example I hope you guys know about it but the problem is if you cannot capture Meb you are at a disadvantage so that poses a centralization factor where homesteakers
if they cannot capture Meb they will just use coinbase and that's not good so the key problem is that with the builders are a highly specialized actor so you want them to make the block and you want to propose the blog what proposal Builder enables is to split these roles nicely and have some way that the builders can trust and give the block to any proposer what happened before the merge is that only have very few actors like the mining posts were proposing the blocks so they could trust them directly however with the merge there are so many stickers that now you need a new
intermediate actor that can ask as this trans partner and that's where Mev boost comes from and this this design so the relay is a doubly trusted entity which is the key feature and the sequence is the Builder so means the block to relay with a bit the relay makes this beat public to the proposer the proposer commits to the bid only because it trusts that the beat is correct and then the relay sees the commitment and releases the foot block only because it has seen the commitment from The Proposal so if we want to remove this intermediary we have to integrate these trust assumptions into the
protocol with a clever design and that's where in protocol PVS comes from the key here is that we will replace the role of the relay with the testers so you will derive the trust in that each step was correct seeing enough attestations on each one of the parts just do not go deep over the design what I want to transmit today is here the space the design Space is really white for example should the proposal be able to choose any bit like it does today or should we force the proposal to choose the highest bid like this seems like a trivial distinction but has very deep implications on the protocol and allows other things like what should we do with the beat should we give the beat to the proposer should we give the beat to all
the stickers so me be smoothing or should we give the beat to all holders so burn it also should we do a two slot design or one slot design they're not competing ideas with different trade-offs even should the proposal commit to the block or to the slot like we have to do inclusion lists or not what type of inclusion lists so here the design Space is really open we have a lot of competing ideas many of them are viable so now we just have to take our time to make sure that they are sound that the incentives makes sense and pick the best one for us and go for it cool so last item of the roadmap is the birch
and saying what's what's that about so the key feature of the Birch is that verifying blocks should be easy and have a bounded cost like the long-term roadmap involves proving that entire execution of the block with a snark but that's far away and not possible today so there is something we can do now there has been research for a long time with different strategies and the key to think about is why do we want to get rid of the state so the state of ethereum contains everything like accounts balances storage and it's unbounded it what keeps growing forever so the implications is if we don't limit the snake growth running a node becomes more and more and more and more
expensive to the point that no one will run a note if we're if we're thinking in one or two years span this doesn't seem like a bad problem but we want ethereum to be alive for 50 for a hundred years so this is a big issue the path that we have explored have been like stage rent where instead of just paying ones for storage you pay a recurrent fee state expiry where you just drop all state from the state tree and weak statelessness where you allow to validate blocks with node State whatsoever and this is what we're going for so the key to think about it is you have this snake and it keeps eating blocks and it keeps growing forever until you reach the end and explodes and
your protocol dies because no one can run notes so weak statelessness is gonna prevent that problem by removing the needs for everyone to hold the state but the key mechanism here would be to add witnesses to the blocks so that if you want to verify ethereum here FN stands for the state transition function now you need the block and the state with weak statelessness you only need the block and the state is included within the block and you allow that with Witnesses which are cryptographical commitments of the pieces of the state that you need and the proof proves that they belong to the state route of the block so the key here is that this blue box
within the block it has to be small enough to not destroy the network say if that small piece was four megabytes then the network will collapse we don't have enough bandwidth we don't want that so the problem is that the current states try is a miracle Patricia tree and in a normal worst case the witnesses could be four megabytes which is completely unacceptable keep in mind that blocks today are 90 to 100 kilobytes so we want something better and the first one iteration what with binary trees this was explored even in 2018 but the problem is that it yeah it's a 4X better but it's not good enough like we need something better then this was put on the background for
a while and polynomial commitments showed up this new moon math crypto primitive and it's fantastic like polynomials allowed to prove the entire state with only a single commitment but it's extremely expensive to produce if you only have one so this new construction came along which is the vertical try where instead of having a single polynomial commitment you have a three of them and that has excellent trade-offs It's much smaller as you can see and it has reasonable costs to produce and edit and even if you optimize it even more it's fantastic we can get to like a 32x Improvement and now the weakness are the same size of the block so yay we got it we can go for statelessness
but even today we have something even better like we could just do a snark of an of a regular Merkel proof of binary tree and then the proof would be only 500 bytes whoa that's amazing the problem is that the tank is not ready now snarks the technology we will need for to do this is kind of unproven so question today or do we wait for three to five years for snarks and do we do a solution that we know is better if we go for vocal tries we will have to deal with that technology forever but we can give the ethereum community the ability to verify blogs and enable a bunch of awesome like like client cases
so I think this is a really interesting case of this dilemma that we have here as far as I know the consensus is that it's good we will go for vocal tries as long as the challenges do not relay the project so Burkle tries work the product like the proof of Concepts that we have today work but they are still quite expensive like the the time to validate blocks is 5X and that's that's not good so we have really smart people working on it if they can bring that 5x to 2X or 1.5 x then we can consider about it otherwise unfortunately this is gonna die so cool what's next so going back to the
original timeline let's put the things into action so disclaimer this is just the seal experiment this doesn't have any meaning at all whatsoever it's just to explain you how these things could play out so just first understand that here there are some dependencies so PBS must happen before sharding datability sampling must be solved before sharding and also vertical tries depend on some State changes so my speculation here is we complete eip44 in one year I think we can say that with with good confidence also withdrawals are almost done I think we will do in protocol deposits next
that would be cool maybe we do it in the chapel hard fork or maybe we do it in the EF then here we managed to solve the vertical try performance problems so we ship it for the next work we Converge on a good design for PBS and then we do that next and happily the like the develop data availability sampling problem is solved by 2026 so we just go for it and do sharding this would be amazing like this is very optimistic I was very happy just to give a counter example we could have a very pessimistic roadmap where everything fails vertical tries derail we don't like whisk and yeah so I don't know this is just a fun
experiment but I hope you understand how the the roadmap could play for ethereum but whatever timing happens the ethereum feature is really bright it may take more time we may need to iterate over more ideas but I'm very confident that we will succeed into delivering uh like an awesome wall settlement so yeah stay tuned and if you would like these things to speed up and happen faster you can contribute you if if you are if you have metallic brain you can contribute new research ideas uh something more realistic you can do is join the ethereum protocol Fellowship this is an excellent program for you to get into core development you would get
a stipend and mentorship it's amazing like if you have considered that please please do it's fantastic and also if you have strong opinions please voice them like write articles go into Twitter like is PBS uh important for you do you want to see this now do you think we should do inclusion lists guaranteed or not like Express that opinion do you think we should ship single signal Direction before anything else explains about it like the any import is very important for us to prioritize features so thank you so much everyone you can follow me on Twitter and just the last point I want to chill lodestar so that's my baby we have been building this client for so many years and
finally we are production ready the EF gave us our seal of approval recently we are securing a bunch of millions and magnets so if you want to diversify you're taking setup please try it out Google load star and yeah thank you so much everyone for your attention all right [Applause]