Shared Sequencing, the Next Step toward Decentralizing Rollups | KBW2023
Korea Blockchain Week·Wed, Oct 9, 2024, 12:00 AM
Transcript
oh hi um yep uh having kind of a bit technical sessions after lunch is perfect so um please bear bear with us because this sequencing thing is kind of really important issue in this area so um it's really pleasure to have you all uh so um Charles from espresso and Lisa from aex so um very happy to be here okay before we getting started uh would you briefly explain your company and what you are building at this space sure hi everyone I'm Lisa uh I'm the COO at Aztec and we're building uh an encrypted ZK rollup on ethereum and what's unique about our approach is that we're enabling both private and public transactions so for applications that require encryption they can developers can build that on Aztec do do you want to maybe explain uh what the re relevance is to sequencing yes of course so as a rollup which we'll get into uh we are thinking about decentralizing our sequencer um at Main at launch and so as part of that we've been having conversations with folks in our community in addition to uh folks like espresso who have expertise in this area that will help us think through what are the different trade-offs and implications for um decentralizing the sequencer and how should we design it so that it uh addresses our goals cool and I'm Charles I'm uh one of the co-founders of espresso systems we are the lead developers of the espresso sequencer and what we are building is a decentralized shared sequencer so decentralized means that the sequencer is run by many nodes um I'm sure we'll talk about that more and shared means that many rollups can use the same infrastructure and there are various benefits from that as well um espresso uh the sequencer is built on a consensus protocol that we've developed called Hot Shot um which is a decentralized proof of stake version of a protocol called Hot Stuff 2 by Dalia Maly and team um and it's got a lot of cool properties um like optimistic responsiveness that um I'm sure we'll talk about as well um so yeah very very happy to be here so um so uh this is AJ from uh I'm a found of radius I'll I'll be doing um moderator and panel both so um uh radius is building a shared sequencing layer for rollups to enhance rollup Centric ethereum uh we believe that wob is should be kind of uh type that uh all developers uh should choose when building a deps because uh rops has um flexibility and scalability compared to Smart contracts so um the sequencing layer that radius is building is help developers to make these deployment of rops kind of easy so we want to contribute to this space especially to uh enhance uh rops and through ethereum so um kind of a that I will ask questions and then I will answer to that question that I asked so um before we getting into start uh the topic that about the sequences uh I'd like ask you that uh actually we had a lot of a lot to think about when trying to differentiate our product in the market when we started so uh um other than the topic about the sequences what kind of unique problems have espro and ASC been trying to solve so for us as I mentioned we are unique in that we are focused on both supporting both private and public transactions um so as folks in this room know there's many rollups that are focused on scaling ethereum which is obviously one of the biggest challenges um the other is privacy so scaling and privacy are in our view the two biggest challenges with ethereum and we're tackling both um and uh that it introduces unique both technical challenges as well as uh challenges in terms of how we think about uh decentralizing and like what our priorities are so for other uh rollups that are focused on you know high throughput low latency they would make different design decisions than us where we're focused on you know enabling um these private transactions and we are are prioritizing things like Geographic diversification and liveness um so it just m means that we have a different way of looking at solving this challenge yeah great response um and totally agreed that the design space of rollups is uh and and sequencing is super big um but maybe to give a good response on the value proposition of expresso maybe it's helpful to go over how rollups currently work um so the general uh designed behind rollups and this is a broad generalization is um it's a scalability method to take thousands uh you know tens of thousands millions of transactions and to batch them together um into a single state update and then to present that along with approve um that the state update the execution is correct um to some verifier which could be an L1 um and right now when a user interacts with the rollup um the user submits a transaction to a central server so all of these rollups whether it's a you know general purpose rollup like optimism or arbitrum or it's an app specific rollup like an nft or a gaming uh rollup um user submit to a central server that is usually run by the rollup operators and that rollup operator is responsible for everything including the ordering and the execution and the proving um behind that transaction um and when I say proving that applies to both optimistic and ZK rollups so optimistic rollups they assume that the transaction is valid but then users can submit fraud proofs in case something finds something wrong uh ZK roll up they use a cryptographic guarantee um but anyways the fact that a single server is controlling the entire process is very dangerous so first of all um you know one problem is uh that there's a you know there there's a single point of failure and uh sorry I see Victor here but uh you know as we know base went down today so that's an example of why you wouldn't want a single point of failure in many cases but I would say that we at espresso we actually think that the most important part part of the rollup stack to decentralize is actually the sequencer because the fact that a single entity has control over the ordering of transactions gives them a lot of power that can potentially be abused so for one um you know a central entity that knows that they will always be the decider the final decider of The Ordering of transactions can rearrange transactions they can decide to censor transactions or discriminate amongst transactions and they know that they can set monop pricing or decide not to include transactions because they know that the next pluck and the next plck and the next plck they will always be part of uh they will always be deciding that so they can always maintain this Monopoly um that is very dangerous um and decentralizing that of course Sol helps solve that issue and of course allowing rollups to share the same sequencing infrastructure also get some benefits which I'm I'm sure we'll get into as well um okay so uh as for radius um I've been organizing at CK research Community called CK Soul here since uh 2019 um two years ago I found me is kind of really big issue because uh this especially a harmful MB um leads to financial losses on usual side so I thought that we can we could solve this problem with cryptography not crypto economic because at the time there are many solutions about uh to use uh crypto economics to solve this m problems so that's the beginning of the radius so recent um recently we uh kind of ped to building sequencing layer with the same Tech so that's the beginning of our radius so yeah so um let's get started about our the main topic uh sequences sh sequences but Charles you already mentioned about something uh sequences but it's kind of technical so I will get back to the basic questions because some of us here uh may not familiar may be may not be familiar with the term sequences or shared sequences so uh what's your definition of sequences I guess I gave a definition you a really good definition already um so I don't know if you want to expand on that but I think um when we're thinking about decentralization it's more than just the sequencer I think that's the part that we're focused on today just like block production um but as a rollup when you're thinking about decentralization block production is just part of it you're also thinking about upgrades like who can ultimately decide how the network the how the network works and how you go about upgrading it in the future if you want to um whether it's like through social consensus or you can do it through a dow vote there's like a whole kind of spectrum of ways that you can upgrade the uh the network in addition to that there's a lot of l2s or rollups that are thinking about uh decentralization of Treasury management so like actually enabling the community to decide how to allocate funds for the rollup um so those are examples of decentralization Beyond block production which is another is is what we're going to be talking about today but they're all super interl um and complimentary to one another and so for us we're thinking about all of those but block production is probably the one that um is most top of mine right now uh upgrades we're talking about actively as well but um because we want to launch decentralized with a decentralized sequencer um that's something that we're active L talking about and exploring with um as I mentioned like folks like espresso want to add something yeah why why don't you define okay um basically uh sequences just receive transactions from end users and then verify them and then build a block with those transactions and soit uh final States and some kind of proof on ethereum that's how these Ro of sequences Works uh and then personally I think that um the existence of this rollup make uh makes the the developers kind of hesitate to deploy their own R rollup because you know rollup has kind of a scalability uh rollups can provide a developers scalability and and flexibility but running of sequences is kind of really hard they should think of some kind of uh token economics how they give uh incentive to run those sequences those kind of really uh hard so um yeah that's what I thought about the sequences but yeah so um Lisa so um the existing layer 2 rops have right now uh centralized uh sequences so um what are what are the consideration for layer TOS in decentralizing the sequences yeah so um as I mentioned we are focused on the decentralization of the sequencer in part because we've gone about it in a more centralized way in the past so before uh working on Aztec the network which is this fully programmable L2 we had a product called Aztec connect um that was not decentralized we had a centralized sequencer and what we realized is that it's really hard to uh decentralize something that's centralized uh because you make a lot of design decisions about how it works uh assuming with certain assumptions if it's centralized and trying to retrofit decentralization on it later is just was was really difficult for us and so that's why with this new network we're kind of doing decentralization as the like base assumption at the beginning um and so when we think about like what is important to us um from an L2 there's like a whole spectrum of um decisions that you have to make about your goals and so um think what you're optimizing for will determine how your design actually works and so we talked about some of this before but um an example of this is like uh considerations around like latency and throughput and if you want that you might reduce the overall number of participants in the network um just because you are optimizing for low latency or high throughput on the other hand if you want um High participation you might make decisions around like what the hardware requirements are or um how um like how you'll how you'll coordinate across all these different actors that are running the infrastructure and so I'd say like that's kind of two of the axes that people are thinking about it's like how much participation do you want like how many actors do you want actually running the network um and like you said a lot of l2s right now are focused on high throughput low latency and so they're opting for um a single sequencer and the way that they're decentralizing despite having a shared sequencer is through things like decentralizing the upgrade process and decentralizing decision- making around that and so arbitrum is a good example they're running a single sequencer but at the same time if that single sequencer ends up being malicious or um tampered with in some way they have an upgrade mechanism so that the Dow can vote for a new sequencer um so that's kind of a protection mechanism and it's not a single actor that can decide to upgrade the network it's the Dow and then they have kind of the security Council as a backup and so I think we're seeing in real time how rollups are balancing these two things um and it's really dependent on what their strategy is and so what makes sense for arbitrum which is going for like low latency High throughput doesn't necessarily make some sense for Aztec which is looking for Geographic diversification and many actors running the infrastructure so we wouldn't have a single sequencer at mainnet launch how about uh espresso uh uh what the shared sequen is actually exactly are solving Sor repeat that what are shared sequence yeah um so actually why don't why don't I respond to Lisa first um I I think that's a great Point like um that the fact that many users want high throughput and low latency and that is currently something that only um only a centralized sequencer can provide but hopefully with the launch of espresso we can actually provide that in a decentralized manner um the way we do that is through Hot Shot as I mentioned um and Hot Shot is really a consensus protocol that is represents the other side of the cap theorem um there's there's this law around um you know consensus that uh protocol can only really be one of the two one the first being Dynamic availability and the second being optimistic responsive um ethereum like Gasper Gasper provides what's called Dynamic availability which means that if the majority of the nodes go down it can still maintain liveness but it comes at the trade-off of having very slow finality actually just as a tangent um I hear often people say oh ethereum has like a 12C finality well that's that's actually a common misconception that's actually not true um 12 seconds is like the block time of ethereum it actually takes around 15 15 minutes to finalize ethereum transaction um takes 15 minutes for Casp FFG um so on the other hand we have optimistically responsiveness uh optimistic responsiveness and that is what hotot provides so what we are targeting is to be able to have a decentralized network that can scale to tens of thousands of nodes while also um while also providing very very fast finality as fast as the network allows and also what we mean by a responsiveness is that the network can produce blocks and finalize transactions as fast as the network allows so so in optimistic conditions uh when say you have a very good Network topology with a very very fast highly connected Central node like running a CDN um you know you can finalize data very very quickly but it's also robust and um and worse conditions where you have a very sparse uh Network topology um so yeah that is really what we're optimizing for with hot shot and of course hotot comes with disadvantages too um it requires higher trust assumptions so we require that two-thirds of the is honest um but you know these are exactly the types of tradeoffs that rollups and their users are making um now to follow on to AJ's question about uh why a rollup might want to participate in a shared sequencer um as I mentioned earlier uh a shared sequencer can provide a lot of benefits a lot of advantages for interoperability um for bridging it doesn't solve all the concerns but it does address a lot of these concerns so for instance a very common use case is to want to bridge an asset or to have an atomic transaction across two rollups so as an example um a user might want to transfer like an in-game asset on a gaming rollup like some gaming item and at the same time they might want to receive a payment in ether on another rollup like say uh arbitrum and the user wants those two transactions to happen at the same time uh the user doesn't want one of them to go through and not the other because then one party would be um would be getting scammed basic basically so what a shared sequencer can do is a shared sequencer can guarantee that the two transactions on both rollups are included at the same time and they're only included together now the problem is that inclusion is not the same thing as execution because one of the transactions may be invalid um for instance the optimism transfer may not may may not be valid because the user doesn't have that balance and in the model of a stateless sequencer that doesn't look at the contents of transactions um that cannot be solved but with combining that with proposer Builder separation and some economic bonding um from a from a builder uh we can actually solve that issue so as I mentioned having a shared infrastructure of your sequencing can make a lot of these interoperability challenges easier but it it isn't a silver bullet it doesn't solve everything um one final thing I'll say is that um you know having shared sequencing also reduces some type the possibility for some types of attacks um some typ of security concerns um one very common attack when bridging is to when you bridge you lock an asset up on roll up a and then you prove that to roll up B and then you uh and and then rollup B mints uh an asset that represents the asset on rollup a that's been locked up and one class of attack is to of course lock it on rollup a and then mint it on rollup B and then revert the transaction on Ru up a now if you think about it that class of trans uh that class of attack can be um prevented just because if two rups are sharing the same infrastructure then both would have to be reverted once again it's this doesn't solve everything uh but it does solve some things and we've written an article about it so um as for radius the problem we are trying to solve is that um we think that sequences have a too much power uh like to like to extract values from the user side and then whatever they want they can do that so uh we need to this power this uh the centralized sequences so the problem that um these centralized sequences can like uh uh can have like a uh harmful me to happen happening on the US side so um that's the one thing that we should provide as a protection to protection for us side and another one is that um there is a huge amount of cost related to running sequences so me is not just a bad thing but we can use this me to make some profit for rollups so the thing that uh radus is trying to do is that we want to make a uh building a block efficiently so we can make a uh we can generate profits for rollups so they can have their Network as sustainable as possible in economical way so um those two things that uh radius is trying to achieve using shy sequences and also inter interoperability that Charles just mentioned is a really important issue in uh rooll of space because uh even though rollup is kind of have really great advantages there are some criticism that um there are um like a uh liquidation fragmentation and interoperability between the other rollups so uh I totally agree with the view that uh Charles mentioned that um we shair the sequences is not the perfect solution to solve this all the problems that wup has but it's a possible it's a possible to solve some of them perfectly so that's some problem that uh radius also are trying to solve so so um let's talk about some the progress you've made so I know that Aztec has decided to uh do the request for proposal about the decentralization um sequences so how how it did it go and do you have any like valuable Insight from those process yeah so we decided to do a request for proposal not only for sequencer selection but also for things like upgrade proposals treasury management um and the whole ethos behind it is that we know Community Building takes time it's not going to happen overnight and so we're starting at the very beginning of the designing of this network so we want to not only build communities wayway by like sharing ideas and learning from others but also um trying to find ways to partner with potential um companies that are kind of at the bleeding edge of these topics um and so espresso is an example of that like they know far more about this topic than any individual at Aztec can because we're kind of focused on our one lane and like obviously we're going to know um enough about sequencer selection but there's some things that just like are so bleeding edge that we can't possibly keep up with it as it's updating so quickly um and so the request for proposal process has been really great because we've been able to get I think there were like 10 submissions total some of which came from our teams some came from external teams um and because we brought in external teams our team internally was able to build off of that and so one of the ones that we're considering is um called for net and it was actually based off of a submission from the espresso team um and so I think we're going to talk a little bit more about like kind of Mev and censorship later on in the discussion um but one of the really interesting things that we saw was just like that being um kind of a decision point or differentiation across the different submissions of like whether or not to inine Mev into the protocol um which is not something that I think many people are talking about right now it's like kind of as I mentioned like bleeding edge of um PBS research and so um yeah I think the the RFP process has been just really great from like a community building perspective learning from others and seeing you know what's gone well for others what's gone poorly for others and how we can make sure that to not make kind of those mistakes um but then also to just like make our understanding of bleeding edge topics more robust um and then potentially build off of that internally so um on the other hand Charles um what value does the shared sequencer give to rollups um why should rops choose share the sequencers over running their own uh sequences yeah um so I think to add on to uh the explanation I gave a little bit earlier about um why it makes certain types of interoperability easier and why it makes certain classes of security more uh you know attacks more difficult um I would say that you know a lot a lot of the reason has to do with decentralization and um you know Lisa gave a really great example and I think Aztec is a really great model for um you know a decentralized a decentralization process done right um big shout out to Cooper on Aztec's team uh I think Aztec is uh really the only rollup that I've seen that has committed to a really uh thorough um process to decentralization of all parts of the stack um not just like an ad hoc approach so super impressive uh as Lisa mentioned we participated um in the sequencer RFP we submitted a proposal called espresso Martini I believe that um adds a layer um that provides pre-confirmation to um any any Aztec transaction which I believe uh none of the other models provide for decentralized sequencing so far um of course uh going back to you know one of the themes of this discussion is that um each rollup there's a big design space for sequencing each rollup has different things they're optimizing for for for instance some rollups are optimizing for very fast uh finality and very very high throughput that is not something that Aztec is optimizing for but um you know what we did submit espresso Martini is a layer on top that is compatible with any of the other sequencing approaches that that can provide that um so yeah overall I think um you know first of all for for the reasons I mentioned before um de decentralizing the role uh the the sequencer I think is the role that is most key to decentralize because of the potential for abuse and that um with with those powers of ordering transactions and censoring transactions and I think the advantages of multiple rups sharing the same sequencing layer and all the interoperability benefits it pro provides is actually just a cherry on top it's a nice added benefit okay okay okay so um Lisa you just mentioned about me so I talk I will I'd like to talk about this me and censorship thing so um as for radius uh actually just sensorship and M problem have been around it quite long so as for radius we use uh encrypted mle so basically we uh encrypt transitions so no one including sequencers or me Searchers can look at your uh transactions so they cannot manipulate the order of transactions that's how we prevent this me thing as well and then also we use we applied a ZK to to prove that these encrypted transitions are valid without decrypting them so that's how we prevent me and also sensoring but how about the the shared sequences and decentralized sequences do you think that those kind of approaches help to minimize those uh attacks uh yeah sure I can take that so um first of all I think what radius is doing is very interesting and I also think it's very complimentary to what espresso is doing because I think while radius is very focused on me mitigation um through you know cryptographic techniques um espresso is trying to take a neutral approach to me and we our plan is to allow rollups to take whichever approach to me they feel is appropriate whether that be something akin to first come for serve or whether it be time boost um which was proposed by arbitrum or whether it be some more MV maximization scheme that where the the profits are pass to to the role of users um so that is that is what we envision and I think um you know a a decentralized protocol for sequencing helps create the conditions and align uh make the incentive such that operators of the sequencer nodes have an incentive to behave honestly in a way that a centralized sequencer would not because in a decentralized sequencer model where a sequencer node knows that it's only going to be a sequencer for a short time perhaps only one block or a few blocks um they know that they need to behave myopically which means that they need to maximize their revenues from fees in the short term um unlike a centralized sequencer which knows like like I mentioned before they're going to be the sequencer forever and they they will always be able to censor uh transactions from a certain party or discriminate and have a very high pricing for fees from a certain user of course there are you know there are Escape hatches that some rollups have implemented on the L1 but if you imagine a world where there's thousands of rollups it might be prohibitively expensive to submit to the L1 directly so um anyways back to the point uh I I think I I think I've gone a little over time but um yeah defin definitely lots lots of design uh lots of choices in the design space and uh I I definitely think everything that we're doing here is very complimentary yeah the only other thing I'd mention is that we um as as I mentioned we had like a bunch of different proposals some of them are more kind of like selecting a sequencer randomly and then the others that have um enshrined Mev uh were more economically focused and so so there are like I said we're not probably going to pursue that because it's so bleeding edge as like the first design but we can potentially Implement that in a future upgrade of the network um but there are interesting ways to kind of like embed Mev into like the the way the protocol actually works where you have an auction to determine which sequencer block is actually going to be selected um so I think that there's going of be different approaches to Mev whether it's like directly in the protocol or partnering with something like radius in order to do that okay um so last but not least um please do share that um what do you think your role in blockchain space it's our last questions I'd say bringing privacy to ethereum that's like the highest calling um for us so yeah just as a oneliner I think um just providing one part of the sequencing space that we believe users care about the most which is having uh good guarantees around transaction ordering and allowing rollups to make much of that decision while providing the Key Properties like Fast finality to users as for radius we we'd like to support a sustainable ecosystem because uh blockchain is all about the giving incentive to all participants so we we'd like to help these developers users and even uh sequencers so they can run this uh blockchain Network as sustainable as possible so um thanks so much so it's time's up so please give a big big Applause to this uh panel thank you so much [Music] all right thank you again uh
Automatic transcript — names and jargon may be misspelled.