Modular March EP 2: Are Shared Sequencers Just Another L1? With NodeKit
12 Mar 2024 · 45:48
The Rollup's Modular March series looks at NodeKit's approach to shared sequencing, a concept Ethereum Foundation researcher Justin Drake helped bring into focus. The episode covers NodeKit's consensus mechanism for fast finality and minimal reorgs, the limits of traditional bridges for cross-chain interoperability, and how shared sequencers and hyperstructures could enable atomic composability across rollups.
Topics
Transcript
welcome to modular March I'm handy this is Robbie and we are the rollup modular March is an educational experience about all things Moder [Music] enjoy [Music] with a presentation on how to solve
rollup fragmentation welcome thanks for having me on super excited to chat about R of fragmentation today so kind of a bit of an intro on myself so I studied computer science at Iowa State University before dropping out after we raised venture capital for node kit my past experience was in building large scale data analytics pipelines for big four accounting firms as well as building one of the fastest data analytics pipelines for crypto data at anomaly so at nkit we're PL we're building a shared sequencer called seek this focuses on providing interoperability between rollups were backed by borderless Capital as6 CSX blizzard fund and polyon Ventures our founding team is based out of the
American Midwest but we have additional team members around the globe so the main problem currently with rollups in general is they provided scalability for blockchains for the ethereum L1 but in that process inability was completely lost and we have a really fragmented experience currently so the current solutions for this are traditional Bridges just like normal layer zero hyperlane things like this Pro aration as well as shared sequencing so a traditional Bridge like something like wormal layer zero hyperlane any number of these Bridges they work using either lock and mint burn and mint or intent based bridging so lock and mint means you lock your
token on one end and then you get out a essentially a minted version by that bridge on the other end with burn and mint you burn the token on that one end and you mint it on the other and this can be helpful because then you don't have the liquidity locked in one big bridge so then you have don't have the issues around that and then intent based bridging requires you to have a qu on both fense the reason why we don't see intent based bridging being a huge thing between rups right now is all these rups have their own essentially smaller pile of assets so intent-based bridging is more Capital intensive you need to have assets on both ends of a rollup so you need them on the source chain and the destination chain which will rollups especially for the smaller modular app chains that gets really tricky because
you need to employ market makers and it gets to be a pretty a complicated process so in addition none of these options are Atomic and they are not synchronous so they wouldn't really solve the atomic synchronous composability problem which we've kind of grown to love at no kit and try and Tackle so proof agregation is another great option for rollups to also solve this essentially inability problem so this is an option that is used by different CK rollups in general and essentially what you're doing is you're proving the you're proving two different actions on two different chains so you're Pro you're proving a burn of a token on a source chain and a mint of a token on a destination chain but the main things holding this back
are the high cost of ZK proofs the speed and also how flexible it is for new VMS we're seeing a lot of Innovations in this space recently of stuff like hyper bridge for CK sync as well as the agare but at the same time we're still not at the synchronous point at this yet there is exciting development with these things called as6 soar to things we use for Bitcoin mining specifically designed for CK proofs but at this point it's not synchronous yet so it doesn't solve the third part of that which is atomic synchronous and composability yeah and just real quick on on this point um on this slide here oops sorry about that um some of the core issue here with the with the ZK because from
from our understanding some of this ZK stuff kind of uh is is like this this pure end end game of of interoperability where it you really are you kind of get the best of of a lot of the the current tech tech Stacks that we have and being able to put them together but as you're saying it's still expensive and slow to generate these ZK proofs so if you want an experience that's that's like able to actually uh you know fulfill like this chain abstraction endgame or something ZK proofs just haven't got there yet in terms of their functionality but the core underlying principle is is there is is that kind of exactly idea yeah basically we're still in
to put it in sports terms we're kind of in the first quarter so we have if there's four quarters in the game we're in the first quarter right now for ZK proof aration so there's still a long way to go but the fact that we're in the game at all is really exciting stuff so we definitely think that ZK proof aration could be something that does be the endgame at this point it's kind of hard to determine what the end game would be for crypto rollups in general because it's pretty wide open space but it's a very exciting development so another option to provide atomic composability is shared sequencing so essentially sequencers are operated by different rollups and essentially if you share a sequencer among different rups you can allow for crossr communication and you can allow for better interop Solutions current
solution for shared sequencing can only guarantee this thing called Atomic ex Atomic inclusion but in the future people plan on providing Atomic execution and I'll explain that later in the slideshow on kind of what the main differences are between those because there's a lot of differences and the end user would be able to use one of those options but they probably wouldn't use the other so essentially shared sequencer serves to connect all these disjointed rollups unlocking cross rollup in op building seamless communication essentially if you can have seamless communication between these different rollups you have a much better ux because it doesn't matter if you're on op stack rollup a cdk rollup CK stack any number of rollups you can have camless communication making your life as a regular user way easier and you
have a better experience you have to use you have to bridge between between them it'll just be something that's at the wallet level makes your life super easy and makes the regular user be able to use any dap anywhere however they want across different rollups but to understand kind of what shared sequencing is we kind of got to take a step back and talk about what the heck is a sequencer because a sequencer is this thing that essentially all rollup nodes all rollups need to have one or more sequencers and a sequencer is essentially the thing that's ordering their transactions into blocks so so essentially when you are able to control the ordering of these transactions you're able to do a lot of really cool stuff in op building which is one of the things that we look into a lot at nkit but a lot of other teams in space look
into it as well and it we think that really sequencing can be this really core unlock and when you can move to Shared sequencing among different rup Stacks you get super interesting stuff where you can have every single Ro become decentralized as well as have them share these sequencing Powers which allows you to do a lot of interesting stuff around bridging and oracles and margin and changes and the endgame for it's going to be amazing for how how you can have synchronous communication across different blockchain networks essentially which is amazing to to see and we think it really is a core unlock so the big benefits of Shar sequencers is decentralization as well as achieving better interop ability we think these benefits kind of go hand
inand if you just have the decentralization it isn't as valuable but if you just said there out build it it's still valuable but you can't get all the RS to trust the same sequencer if it's just one person running it so you kind of need both sides for a shared sequencer to really work so the reason why we think inability really matters and is this big thing for l2s is it allows them to have synchronous composability better liquidity sharing and the global state so imagine if you could write one program and have it be Omni Chain by default you don't have to this whole writing of cross chain programs or cross-chain daps goes away because you don't have to think about it anymore it's just seamlessly cross chain from day one by default so this allows rups
to access every user on every single one of the rups that's is on one shared sequencer seamlessly imagine how much bigger your favorite dap could grow if they could access not only one Ro of ecosystem but five or 10 or 50 all on the same shared sequencer so the DAP developers get to focus on what matters most their D not having to Source liquidity from all these different spaces essentially it makes their easier and it will make rule UPS be able to have better daps and better experience long term so what we really believe the future be for this space is this addition of what we call an atomic composability layer with this you'd be able to do atomic synchronous transaction bundles cross all these
different rollups which essentially enables you to have a much better ux overall We Believe for this it'll most likely be something that will initially be something the users have to create elves but over time there will be front-end interfaces like intents like all these different platforms that enable a much easier flow and a much easier experience for the user so our goal for this and I believe a lot of the other shared sequencers goals as well is for you as a for you as a user to not even realize that you're having to migrate or bridge between chance just be able to use it seamlessly
so Atomic composability is really this defined as the ability to send a transaction that finalizes only if the other transaction the bundle finalizes so either both happen or both don't and currently with shared sequencers you can only do this thing called Atomic inclusion which doesn't help you nearly as much so Atomic composability I've heard a lot of people talk about this thing called def being money Legos um that's what Atomic compos really really is Flash loans yors decentralized Stables restak all those are really examples of atomic composability so we think Atomic composability is like single-handedly the thing that made
ethereum what it is today because if if you couldn't interact of other daps on ethereum would things like lending protocols Unis swap would any of this have grown nearly as big in our mind at no kit not really we think that that's the permissionless nature this nature of I can build what I want when I want how I want is this thing that's been able to launch asive def5 protocols and launch this ecosystem as a whole so we're really excited about how Atomic composability can be brought to l2s in general so difference between atomic inclusion and atomic execution is atomic inclusion is just okay can I include one or more of these transactions in a
block yes yes you can if Atomic inclusion but Atomic execution makes sure that they both actually execute for example Andy if you were using like a defi application that wanted to use a atomic bundle if they told you hey you can submit these two transactions on two different chains but they might execute or they might not I don't know about you but I probably wouldn't want to make that position if it was like okay I'm going to go on two different chains and maybe we'll get there but maybe we won't Atomic inclusion can only do that with atom execution you know you make the trade it goes on both chains both sides of that both sides of it execute so if you're doing something like margin or bridging lending across chains you get a
much better user experience for that better guarantees better interop more useful for the end user so the way that we kind of see this getting enhanced it is Bridges oracles and exchanges this enables all bridges to become single block Bridges all oracles to be able to access Global State across rollups decreasing oral cost as well as rollup costs and all exchanges become Global by default so that's it's a pretty cool change in our opinion and we think that more and more rollups that interact with these things will grow bigger and bigger instead of getting more divided because think of it kind of like the first time that Banks were able to be interconnected across the country or the internet coming and
being able to connect all these websites together the websites didn't get smaller because they're interconnected they got bigger because they were able to get more reach because chains that would never have previously interacted their user bases would never have previously interacted at all now become seamlessly interacting and knowing each other and bridging across and trying new things constantly so in summary in summary we think that the usability of blockchains in general can't just be solved by only doing front-end stuff front end needs to change and the back end needs to change and unification of all these D jointed chains is really a big key unlock for user adoption and we think that overall ecosystems need to be more interconnected divided ecosystems are't
going to be the thing that brings us towards this next million or next billion users we think the more interconnected these ecosystems can be the better the ux is going to be the better and the more better the ux can be the more users will end up using it so yeah sorry if I went through the slides bit quick but yeah that's everything that we kind of build it that we kind of think about and building in general at nkit we think a lot about Atomic composability and I really hope more people dive into it in the future brand timeos everybody awesome man um appreciate that actually gives us more time to kind of dive into a couple different things here um so kind of taking us back here um so let's let's kind of go over what this
what this looks like now uh with the current setup of sequencers and you know let's let's kind of dive into some of the the changes with this visual so um you know talk us through what happens when a a user on a on a rollup today submits a transaction um and then talk us through kind of how that looks like uh in in a in a world where shared sequencing is more adopted yep so typically the way that user transaction works with a regular rup is so I'd submit it to let's say I'm working on optimism let's say I'm trying to trade nfts on optimism I know they just rewarded a bunch of their participants let's say I'm trading nfts on optimism so I'm trading nfts on
optimism I connect to optimism RPC endpoint so just a regular optimism note just like you would on metamask so i' connect to that that RPC endpoint would forward my transaction to this thing that they call the sequencer and the sequencer is just one specialty node so then that sequencer creates a batch for the optimism rollups it's this thing called op node so it sends you that sequencer creates this batch of transaction which a batch happens every two seconds so imagine you and Robbie and me are both trading are all three trading on optimism we're all trading bunch in two seconds all these transactions gets batched up and then that batch gets submitted via this thing called the optimism Batcher and that Batcher admits it to in this case the data availability layer would be the
ethereum L1 so that's how that batch kind of gets submitted in a regular sequencer so it's all centralized so if at any point this sequencer node goes down your experience would get interrupted and it would be a pretty hard stop of just oh the chain stopped and that's happened a bunch of times with different chains not just optimism but whole bunch of different rollups and that's a real issue because if you had were trading on like the New York Stock Exchange and it just went down out of nowhere a lot of stuff would fail because a lot of stuff relies on stuff like that operating during the exact hours that it's supposed to be operating so we think that for like Mass adoption you can't have things where just like oops it went down because AWS Us East
one something like that went down it's a big ux issue and then with the shared sequencer your experience for a regular rollup transaction shouldn't change a ton which is really the nice thing that's the goal of all shared sequencers is for the non-atomic case so like the non-cross chain case everybody's goal right now of shared sequencing is for your user experience to not change to be able to decentralize without having a a worse user experience that's that's kind of the Big Goal around it so the user experience wouldn't really change it does require modification to the rule up source code itself but the user experience shouldn't really get changed at all and then for Atomic transactions that does change a
little bit but we think things like intense will really help out with making these cross chain bundles because instead of you having to figure out like how do I make this bundle and it can be really confusing on how to make bundles and stuff like that there will be a program that just seamlessly makes it so instead of you trying to figure it out you'll be able to go to a website or go to on metamask and have a metamask snap that can do it so it'll be super easy and just seamless yeah now um the the followup to this that I have and I think Rob's got something as well but um from what I understand the pre-confirmation of using a centralized sequencer happen quicker than a shared sequencer but you still
have to get this hard commitment after the pre-confirmation from this data availability layer um and then similarly here in the shared sequencing model uh this this you know you've got like these Stacks or the shared sequencer provide you know there's there's a difference here in this pre-confirmation and then hard commitment could you kind of explain what pre-confirmation and hard commitments even are and then C could we also dive into um the differences in the models yeah so essentially think of the pre-confirmation as it's just kind of the pre thing that happens before the hard commitment so essentially it's a faster way of confirming to you that hey
we've created this block this is going to be the block for this rollup for this time and essentially that's giving the user the user is able to move forward in their design like when you submit a transaction on optimism you're not waiting for the full 12 seconds of ethereum's blocks before your transaction goes through it goes through much quicker it goes through in two seconds that two second block time is determined is by the sequencer itself so this hard commitment is something the rup is doing in the background so the end user most for 99% of the time the end user really won't be paying attention to the hard commitment unless they're trying to bridge out so if you for example if you made a transaction on optimism and then you try to bridge a second later you wouldn't have a hard commitment on it so if you just got your
e in the account that might you might have to wait a minute or two for that hard commitment or 21 minutes for eem's finality depending on the role of design they each operate a little bit differently but in a shared sequencers design you would get that pre-confirmation the same and you'd still be able to reive the hard commitment as well so essentially the centralized sequencer will always be faster because you don't have to do this thing called consensus which is just all these nodes coming to agreement so when you don't have to do consensus with a centralized sequencer you can be really quick but a shared sequencer does have to do consensus which is basically going around and asking each node hey is this the block is this the block is this the block and once you get everybody to agree just like trying to get everybody
agree when you're like ordering dinner once you get everybody agree on what you're doing then you decide here's the block great now we can move on to the next block and typically that can happen in one second one to two seconds depending on the different consensus models used some are faster some are slower but yeah so that's got still extremely fast gotcha so so either way the the stacks in the shared model provide the uh these you're calling them decentralized pre-confirmation and then uh the sequencer uh in this in this um in this model or or or the same stack node provides this uh pre-confirmation and that
pre-confirmation allows the user to engage with um more uh apps and engage on chain much quicker but basically what happens is these hard commitments are just in you know each action that a user takes on rollups are uh confirmed quickly two seconds or or so with pre-confirmation and then they are confirmed uh after about 12 seconds um kind of like this is a this is part of of the blockchain state now um effectively exactly and different rups do that confirmation in different steps for example optimistic rups are just posting that data to ethereum ZK rollups are doing that confirmation of the ZK
proof so that hard commitment is done in different ways for different rollups but the nice thing is for a shared sequencer we only really have to worry about how the blocks themselves are made made so we we worry mostly about essentially how the blocks are ordered instead of okay this rollup does this kind of confirmation this one does this one there are are some things you have to change with that but most of the design space is pretty similar across the board because especially as long as we're talking about evm rollups it does get a little more different with different rollups that are on different Stacks but yeah gotcha nice I've got a couple questions too I think like one place to start is
at the node level so you mentioned how on the current format of sequencers these are centralized sequencers the users submit their transaction directly to the rollup node so I'm curious in the shared sequencer model are users still sending their transactions to only the one rollup node or now that these these rollups are sharing a common Global State I think is how you put it can users submit transactions to a node that represents the global State across multiple rollups that's that's one of the really interesting things that we're really
excited about because it you technically actually can do that so you could so there may end up being places they may being like operators that run stuff where they just basically say hey I'm going to run a note for different rollups and essentially that's how we're thinking about kind of the atomic composability stuff is the atomic composability layer would be run by kind of these specialized actors that are running nodes for multiple chains and then it gets really interesting where you could basically be able to run basically have a user could potentially only have to sign like one or two me they would have to sign messages for each of the transactions but they would only have one endpoint really where they're submitting it to and then that end point kind of dishes it out SAR intent so then you're do a lot of
interesting stuff that but yes in the current design space you are still submitting to the rups themselves and the reason behind that is because the rups are basically still pulling off their mol and if the sequencer has a different view of the Rip's mol than the rup node then you can have issues with how the block is being produced so in the future we definitely think that there's going be more experim experimentation it's just the Space is really new right now so everybody's kind of still getting their legs underneath them and making sure that everything works correctly and then with think 2024 is definitely going to be the year where a lot of experimentation happens a lot of new features come out intense cross chain margin all these different things it seems like everything's kind of right
for the space to explode out and all these crazy things are now becoming possible all at once which is really cool yeah yeah uh anyone who supports the uh efficient market hypothesis hypothesis should be really excited about this because it means that prices can arrive at their like a efficient market price or fair market Price much quicker um not like with the unification of of all these uh chains and liquidity very cool um all right I've got another question here which is on the consensus side of things so you mentioned that uh when the transactions are submitted by these rollups into the atomic
composability layer uh like we see on this diagram here the the nodes in that atomic composability layer are arriving at consensus about what the state is at each of the rollups that are submitting to it how H how do they do that like you know bitcoin's a proof of work Network they use miners to arrive at consensus ethereum like has proof of stake and each of their validators stake some Capital to arrive at consensus how do uh node kit validators or node kit nodes if you will how do how do the nod in this node kit uh composability layer arrive at
consensus yep so the way that it works is the sequencing layer validators here they're the ones that arrive at consensus the composability layer isn't necessarily validators per se that's more specialized actors so you you'd see that more as like block Builders or you could use people that are doing proofs proofs there traditionally what we've kind of seen is it seems like the rise of poser Builder separation is going to end up happening most on the shared sequencer layer so in this diagram that's really we're seeing there so that all you really want the atomic composability participants to be really specialized actors because for for reference some of this stuff could cost a couple thousand dollars a year a couple, a month to run so maybe $20,000
a year to run but when you're doing all these different bridging transactions there's a lot of there's essentially a market to be made there so then the rollups are still able to essentially internalize a lot of these inability fees so instead of a rup having to leak fees to another bridging provider the rups can internalize it so we see this Atomic composability there this is essentially specialized Builders or specialized participants that are running specialized versions of these different rup Stacks but think of it as these Builders take on a little bit of complexity so the end user gets a much easier experience and you still submit to one API you don't have to worry about oh am I going to have to submit to 50 different apis and get really confusing a big thing that we kind of think about
here is how can I make this as simple as possible so then when we go to 50 100 a th000 rups the API stays the exact same so people can build stuff and not have to worry about like oh is this all just going to change because the biggest thing with like why biggest thing for us on why we think ethereum got so big is the evm hasn't changed a ton so people were able to say okay that's the standard I can go build my liveliness on this I can go put my life savings and say okay I'm going to be a dab developer people have that flexibility and until you kind of are able to establish standards on it people will kind of get a little weary on like can I build on this can I not because it's pretty risky for new businesses to build on new
technology until you kind of arrived at a standard so basically the key to Tom composability is standards so the key to standards is one more standard but yeah yep nice and nice you mentioned proposer proposer Builder separation which my understanding is in the context of valid validators on arriving at consensus on ethereum now you're mentioning that because because node kit also arrives at consensus there's also an element of proposers and Builders and you guys are able to separate those in uh in no Kit's consensus mechanism yep we are and that's one of the that's one of the main ways that
people are thinking about across the space about how atomic composability can be achieved everybody kind of has slightly different elements on kind of how they're planning to do it how other people are doing it so everybody kind of has different ideas around it so I don't want to speak for the entire shared sequencing space but at least at noit we think the best way of kind of doing inter ability is you need to allow for some specialized actors in the system because otherwise you'll end up just having everybody try and run it themselves which for example we're using a service today to to do streaming does any of us know how to code an entire streaming service from scratch I know I don't so neither do I we're able to use the tech and it works fine so you need
to allow for specialization otherwise it gets really complex if everybody's got to do everything nothing would move forward yeah yeah I think that kind of goes along with with the broader thesis of of kind of modularity as a as a whole another kind of important concept that that that we brought up here is this Atomic composability um and I'm I'm particularly curious how um shared sequencing um is Stacks up in this kind of uh competition for rollup time to finality I know we touched a little bit on the pre-confirmation and hard commitments and the differences um so I guess let's talk about uh time to finality using shared sequencing and how
Atomic composability kind of is is is part of this or is not um and yeah perhaps they're two separate things but I just want to touch on this time to finality AR kind of conversation that's been happening because I think that there's a lot of insights about trying to um achieve these hard commitments as fast as possible um and then I think that also plays a role in this Atomic composability conversation yep you're exactly right so with time to finality it's a humongous factor in this so different rollups are going to want to be able to do different bridging between them but at the nodate level for example our time to finality is sub 1 second we specifically chose
the consensus mod we chose snowman for its time to finality because having a reorg on one R having a reorg on a rollup is a much larger issue than having a reor on like a layer one for example on a layer one it's an issue but it's isn't this huge issue ruup should only reor if the essentially the L1 underneath rears so that's the only time when you should have a reor so essentially Atomic composability needs to be essentially very cognizant of that very secure and that's the big reason why a lot of these Atomic composability projects are kind of taking a little while to get fleshed out and that's why we haven't been able to do this these past few years and they're finally all coming in for Russia now is because we needed the ruup systems to get a little bit more um mature in the stack because
then you're able to build out these systems you're able to know okay here's how this rup is going to work here's how this rup is going to work and now that we're starting to see like arbitrum finalizing some of this stuff in their stack CK sync polygon optimism everybody's kind of getting there where they're having these big upgrades but they're not really having one of the things we haven't noticed in the past few months is there isn't as many huge changes with them for example optimism has completed Bedrock polygon has completed some of their major upgrades so now that we're kind of reaching finality on the code you're able to start doing more things with atomic composability start doing stuff where both transactions succeed or both transactions fail and you're really able to do more experimental things because we have that core foundation and that's
why we're starting to see the rise of shared sequencers da layers decentralized proving all these things because once you have a stable Foundation then you can build the whole house but until you have that stable Foundation you'd be a fool to try and build out the whole house because it's just be constantly changing yeah let's dive more into this um I think you had another uh graphic here U or perhaps it's it was earlier in the uh in this slideshow um maybe not um I mean this is this is definitely one where where Rob and I were were thinking about this idea of of hyper structures where you've got all these interconnected Parts um but I guess like let's let's Okay so in a world where this graphic stands true um
and shared sequencing exists um and atomic composability is being reached like like what's next for what's what comes after that what's the what's the what's the third and fourth order consequence whether positive or negative problems or innovations that kind of come in a world which this diagram exists yeah so the way that we kind of think about it is think about how you could use you could still use your local bank before in before probably any of us were around before Banks became like interconnected with all these networks and before like the internet became interconnected in general you could still technically use it and it was
usable and it like there was these things called the internets which were these smaller internets that were very divided up but once you were able to interconnect them all you had a caman explosion and that's why we had all these websites pop up we had the.com bubble we've had the rise of social media all these things that's what happens you're able to do whatever you want wherever you want however you want all these build whatever things it becomes possible so anybody could launch a ro just like anybody can launch a website anybody can do it however they want and it can be cheap it could be fast be easy to use and all these crazy applications instead of it being oh my crazy application's too crazy I don't want to have to learn all these different things if you can know how a code you can make it you can make a
blockchain application and you can connect it to all these different things use however you want and we want to make it so blockchain applications are easier to use than regular applications I want my mom to prefer to use my system then go and use her local bank once we've done that then we'll know that we've actually gotten to the place that we want to be but we want it to be simpler to use than traditional Banking and that's what we think this provides so that's why we're so excited about it Andy and I are laughing because you used the word Cambrian explosion and oh yeah I know it's a meme at this point I think I think it rings true so I'll I'll also add some context around
this this uh hyper structure analogy that Andy and I were talking about last tonight which is that if you look at if you look at this diagram you have here all of the six l2s in this diagram are are connected and I come from a so in mathematics there's a there's a there's a whole there's a whole class of theories called and and it's involved in set theory there's one operation in that which is that let's say you had uh all these l2s in you know you had a set of l2s right in this case six but none of them were interconnected once you so you would have no lines
right you just have six circles within this big set of of uh l2s once you connect all of those l2s together you do what's called the hyper operation so I don't know if there's try show this one this is the one exactly exactly so this would be a traditional set of l2s right so once you once you uh do this hyper operation you map from this set to uh the other set you map to this the power set of l2s and doing that operation is called a hyper operation and then there's there's these algebraic structures that are called hyper
structures and these hyper structures are collections of these mappings basically from from uh a set to its power set and then you can build these structures on top of one another like money Legos that that ultimately uh create these hyper structures and the founder of Zora one of the popular uh nft marketplaces on optimism wrote an entire article about these hyper structures and I don't know whether he realized that it was a formal mathematical term or not but he he lays out this criteria for building hyper structures in in crypto which is uh to be unstoppable expansive uh there's there's seven seven
of these criteria I'll read them out just real quick Unstoppable uh which means that the the blockchain is persistent it runs as long as the underlying blockchain exists um and in theory this interoperability solution is Unstoppable it could run as long as the underlying l2s exist um he also goes on to say free there 0% protocol fee uh and in this case shared sequencing could be made free valuable expansive permissionless positive sum and credibly neutral and those are the criteria to make up a hyper structure so a lot of those are variables that are still up for determination probably based on what the
L2 the underlying l2s are looking for out of their shared sequencer so when it comes to setting a shared sequencer fee when it comes to um The Guiding principles that that determine this shared sequencer what is the coordination process for that are you guys making these decisions um is it up to like decentralized governance for like on uh based on these l2s who's making the decisions to you know let's let's take one example for Simplicity let's say a protocol fee a or a shared sequencer fee who would be in charge of making the call on whether or not the shared sequencer charges a
fee yeah so it's a great question and we've actually thought about this a ton especially in the past couple months at no kit so we actually have a strategy that's I'm going to give a little Alpha out but this isn't out there yet but let's give it some Alpha to the rule up listeners so the way that we think about it you need some kind of fee for C resistance just and that's basically you need a fee so nobody can submit 50 million transactions in two seconds and then try and crash anything you need a little bit fee for that other than that and that's similar to SL to charges a fusible but that fee can be very small but other than that for the fees on the l2s themselves the l2s are still able to keep their own sequencing fees in a system like this because a shared
sequencer doesn't necessarily need to be submitting all of the l2's batches to the rollup contract on the L1 so the l2s are still able to keep their sequencing fees and the only and here let me pull here we go the atomic composability diagram the way that the fee structures will be set is We Believe this we you should flip it on the head of every single type of fee structure that's in the past typically typically protocol set the fees and like the act of the protocol set the fees in rollups the rups provide all the order flow the so we think of rollups is kind of similar to how like um Freight is done which I know Freight isn't the sexiest of things but if I'm trying to ship um a ton of mangoes across the US that ton of
mangoes the person that's produced the ton of mango is going to decide much more about like okay who's going to be the one to carry my Freight so with this we're saying the rups are going to be able to set the fees on the composability layer and the rups are going to be able to decide so the rups are going to are going to be able to incentivize whoever they want these different actors and say okay so you're going to get this percentage of that fee you're going to get this percentage that enables at the ruup level much more control over how this composability is done so if you want to run essentially like a specialized um actor in this that's completely private for your rollup and you're like okay every single transaction that gets submitted to this sequencing layer has to be encrypted using some kind of encryption mechanism
before it goes to the sequencing layer the rips can do that and they can determine how the fees are paid out so the RPS will be able to essentially adjust that and we believe that that's the best way because if we if we just try to do a broad stroke and say like okay all the rups get 1% of fees on composability transactions you'd have some rups that would be thrilled about it and you'd have some that would be super angry about it so I think at nkit we think the best way is to allow the rollups flexibility on how they can set those fees but also provide them kind of templates on that as well and provide them basically like okay here's what the average fee is for all these other rups you can set it however you want if you want to set it at 1% these composability
participants can charge or you want to you want to charge one bip or 1,00 or 100% And they take all the fees you can decide as a r how that kind of works and we think that's kind of the best way of do it make let the rups decide it because their order flow is the valuable part do you think the the rollups end up grouping together based on their own biases and and uh prerogatives like the the rollups that want a protocol fee you know they all group together the the rollups that want encrypted transaction pools they all group together and then we get these these groups of rollups that share sequencers yeah I think that well you could still have the same thing on the
same sequencer so like technically speaking uh sh sequencer could accept a block from any number of Builders so like you could have an encrypted block or you could have a non-encrypted block you can even split up the block into multiple pieces that's one of the things we're working on at nkit is kind of a chunk based approach so our blocks are not one piece so that's how we're able to support different da layers is our blocks are made up of mini blocks so then you're able to so for example you could have something like a fully encrypted rollup that has one chunk and then you could have a rollup that does like first come first serve you could have a rollup that does traditional block building they can kind of change it up however they want which makes it really flexible for the rups and a big
Focus for Us is around rollup Revenue redistribution the biggest questions rups ask us are about how is this going to affect my Ro's revenue and how can we actually achieve in our ability and those are always top of Mind in any of these decisions we make it's always surrounding that because we want we want rollup to make have a better experience using sequ are not a worse one and we think we have a big opportunity to impact this industry in a hopefully a great way so we than hard about thaty succeed yeah sorry sorry I thought I thought that was the last part um so you can bring a roll up with like one rollup using Celestia's da one roll up using Igan Da One rollup using ethereum in the
post EIP EIP 4844 world and you can sequence all of them in the same Block in nkit using like this chunk form so any evm rollup basically whatever parameters if they have like so do they have to be separated like is it something that the rollups prefer like if one wants to have privacy embedded then and one doesn't obviously there's like a separation there but if I'm using Celestia and I'm using aen and I'm using a veil those need to be separated because they they are ending up they're being pointed to different contracts so that's kind of why they need to be separated how does that work yep so think of a a chunk as a block so a chunk is just a block for a specific
da layer so you could have multiple rollups all inside one chunk okay but a chunk da specific so that's how we're able to support different da layers is you're able to be able to prove okay is this everything that we meant to send to this daay and just like with a rollup being able to essentially on SL call a function be able to say did you withhold any data we're able to do a similar thing because we make it for each chunk so that's how that would work yeah hope that answer the question there so each chunk is like it's set for a specific data availability layer so no kit is agnostic can be in in the future when there's more data availability layers
you can add them in to your codes in some capacity and you can then so in the future the no kit blocks could theoretically be split into you know a lot chunks if there's a ton of different da Solutions out there yeah yeah basically we can split it up up pretty high pretty we can split up pretty heavily on that as well as we basically run into the issues of networking at a certain point which um any computer scientist person would tell you if you're running into networking as your main bottleneck you're happy of how you're doing so yeah oh my goodness I'm so that's how I think about it well um no I think this has been fantastic um I really appreciate you uh
opening up the uh floodgates for for shared sequencing and uh spending some time with us today thanks for having me on it was great to chat about everything from compos Bo to Da lers and all in between thanks guys