Can Rollups-as-a-Service be the AWS for Web3?

ETHCC 6 · July 2023 · 23:49

Amrit Kumar examines rollups as a service for teams building application-specific infrastructure. The speaker considers how managed rollup products might reduce development effort and support experimentation.

Speakers

Topics

From ETHCC 6, hosted by Ethereum France.

Transcript

foreign good morning everyone my name is Amrit Kumar and I'm from Old Clay we build a rollover service platform that allows people to deploy application tailored rollups in a very easy and seamless way today we are I'm not going to talk only about alt lab but the idea is to kind of view perspective of what generally speaking what role of the service platform Builders are doing today and how it draws parallels from what exists in the web2 world in particular

AWS so um but anyway we have I think over the last year or so two years or so it's it's pretty much established by now that uh if you want to build like a monolithic chains in the way it exists today including ethereum mini today it's not very scalable because they end up doing all the three main components of a blockchain which is execution uh consistency and in some cases settlement and so and that's kind of the reason why uh you know monetary chains are moving execution out in particular and uh will hopefully become the base chain for da and settlement eventually and so and a really good thing that

happens when the execution moves out is that you are no longer limited by the limitations or the constraints of the base chain which does DNA and everything else and and that's why you will it we have seen over the last years or so uh several types of execution layers being built uh which uh have different traits so for example you could say oh I want execution layer that relies on let's say fraud proofs or that relies on uh validity proofs you could imagine different types of run times because you are no longer bound by evm you could say I want a fancy uh wasm or I want my own VM because I think it's a really highly paralyzable or whatever so could you experiment with all sorts of runtimes on the execution layer and have your base chain like ethereum for

your DNS you could imagine building execution layers for certain purposes or certain business uh you know ideas so you could say Okay I want a roll up or exclusion layer that serves a general purpose uh businesses so something like arbitrum optimism ZK sync and others or you could say oh I want something that's very sector specific so I want to defy uh execution layer where all the D5 you know protocols or applications like uni swap compound are we and all that will sit at one place and they could share all the liquidity or you could go even more degenerate and you could say I want a roll up for specific applications so you could say I want a roll up for my dydx application for example

um or you could also say I'm going to build a very special type of roll up that is a transient so I want this roll up to be very short-lived and I will explain to you in a minute what the advantage of this is but basically what I'm trying to say is that you could have different purposes these Roll-Ups can serve different purposes uh in different contexts and of course they can be you know layered one layer 2 more or it could be in layer three more depending on uh where these dsets and as a result of execution moving out of the base chain we have seen turn off education of course the popular ones we all know arbitrum optimism Z casing and others but different other ones are being built as well uh that focus on that focuses on uh different types of VMS for example

now this creates some pain points for developers because if you are thinking of building or using any of the existing rollups it's very hard because there's no unified framework for you to pick and choose and decide to use a certain type of you know offering some of these Roll-Ups actually offer usdks as well but many of them are actually very low level which means that it's it's not very easy to go and pick some of these sdks and it's uh it can take quite a bit of time to to go through all the heterogeneity that exists in the system because of that and so uh the question that I would like to ask here is can we get inspired with something that exists outside of web3 uh which is which is AWS for example today if you are building a startup or any company for

that matter uh most of your compute and storage needs is outsourced to AWS or some other cloud service provider you do not go and the bare metal route where you go and buy hardware and you know host it yourself internally the idea is can we learn from AWS because all you do with AWS is say Okay I want a certain type of instance for example I don't need to medium instance and with certain you know operating system running on it and certain uh you know configurations and AWS basically offers that for you and you start deploying your application on on that system so it would be good to have something like this in the execution world in the in the web 3 space where you could say I want a certain type of roll up and I don't want to manage any of that infrastructure can you do that for me

and that's exactly what uh uh roll ups uh today uh rule of the service platforms offer today and if you try to see what are the benefits that you would get if you had something like this is one it reduces a lot of cost because imagine are you being uh let's say a game developer and you're thinking about building your own applications but scroll up you'll have to go and find sequencers or you have to run sequences yourself you have to go and run RPC endpoints exports and so on so forth and it starts to add up in terms of cost it also slows you down because as a developer application developer you should be focused on building a good fun and engaging game and should not be worried about uh you know how sequences work and you know where should I host my

RPC endpoint how to handle uh the load that might come to this RPC endpoint and so if you had something someone else to kind of handle that and by the way Roll-Ups gonna give you the security guarantee so you don't have to worry about that because in the end you are you if you have fraud proofs or righty proofs everything could be would still be secure so it saves a lot of money it could save a lot of money it could save a lot of years of developer resources and you could actually scale with apps so for example if you're growing let's say you started with an application with let's say 100 users and at some point it grows to a certain number of users then you can actually scale your application as well by spinning up different instances of your of your execution lab

but the thing is that we want to be offered this in a in a not like AWS centralized fashion but in a much more decentralized way and the question is can we do that uh but let's look at the rollover Service as they exist today and by the way all clay or other service providers are out there they kind of offer in the same model today so it's kind of a common framework in which all the Roll-Ups are service providers operate today so basically you have this uh RS rasp provider which is kind of like a vendor and uh you as a developer you reach out to the vendor you say I want a certain type of roller with a certain VM and you I want to customize my rollup in certain ways for example I want to use my own gas token or I want you know to increase

my blog gas limit because my game consumes it's fully on chain and consumes a lot of gas and you could do that and then uh you kind of pay uh in some way it could be a subscription cycle it could be metric based and whatnot and you pay uh this harass provider some sort of money to provide the service to you so it's a very SAS Model A very traditional web2 model and this is kind of what we offer at the moment at Auckland so it allows otley has a rasp product which is actually live so you could go and go to wrap dashboard.org technology and you could go and deploy uh roll ups from there it takes about two minutes for this roll up to be finally functional and you can use it uh for your application needs uh as I said there have been several

benefits of Ras uh you know you could uh it's it's low cost it's faster deploy it encourages new innovation experimentation and most importantly it's um you know it allows developers to focus on their core expertise so as I mentioned earlier game developers can go and focus on game development and do not have to worry about any of the uh node management and infrastructure management and many of these last providers and I would say most of them depending on how you define them they offer this no code framework so you do not have to deal with sdks you just go there and click a few buttons just in the same way you go and build websites today you would go and build your own role up today just by clicking and um uh having with some buttons and clicks so without layer we offer two types of

roll ups one we that we call a female Roll-Ups so these are Roll-Ups that are disposable in nature so imagine for example uh Google apps right uh eucalabs did a mint event about a year ago it was hugely hyped uh there is I think about 300 million dollars from that land cell this was about the uh other side uh metaverse land sale it was hugely high but during the mint event uh about 100 million dollars if I'm not wrong was wasted in in gas because there's a huge gas War like situation and then after that yoga Labs did a community vote where they asked the community to go and vote uh whether you can lab should go and build an app chain for their for their entire project and it was uh voted 51 49 so 51 percent of people

voted no you should not go and build your own app chain and 49 voted yes and so you could see that there's there's a huge divide between whether you should go and build your own infrastructure and whether you should not and one of the main reasons is that when you go and build your dedicated infrastructure whether it be roll-up or an app chain you kind of get siled in some way so imagine for nft project uh you know you would issue nfts on that roll up and then once the nfts have been issued well there's nothing much to do on the Toler because the activity that comes from secondary trading is not that much and so um a good idea would be to some have something like a female Roll-Ups because what you could do is you could spin up the stroller and you do your

mint event on the stroll up so you basically sell your nfts on this roll up and once you have sold audio nfts once you're done with it you will take this infrastructure down see all the node infrastructure for example sequences and RPC endpoints and others will be taken down and when that happens all the assets for example nfts or erc20 tokens or native Visa that exists there will basically get bridged over and settled on the base chain on ethereum and so it gives you it gives you a really highly resource optimized way of having a roll up and even if you don't like a long-term burden of having a roll up you could have something like this which is kind of very AWS style of some sort where you scaled infrastructure for example in case of Amazon when during during the Christmas time when there's a

lot of buying activity that goes on Amazon they scale up the infrastructure and when that buying frenzies kind of slows down you scale it down and here in this model you're scaling down to absolute zero so you don't need that anymore and you say bye bye roll up the second one is a persistent roll up so this very classical to let's say something very similar to optim optimism arbitrum zika sync but for your specific application so it's very ideal for anything that's long term has a long-term Horizon uh when we started back in the day there was no op stack there was no arbitrary orbit so we had to build this entire uh stack for Flash Roll-Ups and buses Roll-Ups from scratch it's an optimistic rule of implementation but now we are in the process of integrating external parties external sdks as well so if you

like op stack if you like Arbiter more bit or if you like any of the ZK ones uh you would be able to go and deploy those roll up instances as well um I'll skip this because I mentioned earlier you could do nft sale on on flash players and when the nfts are sold out those nfts go back on on the base chain and then you could enjoy all the liquidy benefits that the patient could give you so for example if you had an app chain if you shoot your nfts on the app chain uh you know you're you're missing on the liquidy that is there on the open C but if the assets move back on on ethereum then you can enjoy all the liquid that opens yes so it's ideal for anything that's uh you know even driven like air drops or you

could imagine games uh you know for those who know um dark force is a fully on chain game and they drive a ton of transactions uh because every single move that you make in the game is a launching transaction it'd be good to have something like that on a flashlight we actually hosted that a couple of times and I did about 200k transactions a day uh every single time we hosted that so it'd be ideal to have uh something that is very short short term driven but drives a lot of transaction volume on something like a flashlight I'll skip this because as I said it's very classical roll up but um application specific now um so far most of the rasp providers that exist today again including author they are very mostly kind of like AWS

rappers where you have all these sequences RPC endpoints explore endpoints and whatnot they're all hosted on AWS and uh you are basically presented a a UI wrapper from where you can go and manage some of these instances but remember when we when I mentioned earlier the initial goal was to kind of build something much more decentralized and permissionless system but we ended up becoming was mostly a wrapper around AWS so uh can we do better than this and we are trying to do this uh we'll see how far we go but the idea is with what you call okay 2.0 but the idea is to kind of make it much more open uh decentralized uh and convert that model like a protocol where uh you would say okay I don't I mean I

love that you know you guys manage uh you as a raspower that manages my node infrastructure but what if I want to manage it myself or if I want my committee members to manage my sequences and RPC endpoints can you do can you do that that you won't be able to do if you if you operate like a AWS wrapper so the idea is trying to open that and open that system in a way that anyone should be able to come and operate these sequences and other node infrastructure so basically on the top is how off layer operates today and by the way most if not all of the roller service providers operate today which basically you have some sort of an SDK or a UI dashboard from where you deploy different types of rollups uh mostly today on ethereum but you know in since with some rasp

providers you can choose to subtle or use different types of Da for example Celestia or eigenda but this this schema is very much same across most roller service providers today on the top and we're doing right now is kind of decentralizing it using uh something what we call a beacon layer we are still deciding on the right term uh but the idea is this network kind of acts like an interlay between your roll up uh you know service that or the vendor that that you have on the front-end side and the back end uh you know let's say L1 or L2 that you want to deploy your roll up to and this Beacon layer acts as for example a shared sequencer so for example you could say oh I want uh five nodes and then you could get this five

node sequencer from this sequencer so the SQL is this Beacon layer kind of orchestrates all of that for you um and so this is kind of how the beacon level basically said so you have the beacons you come and make your request for a certain roll up through the beacon layer and the beacon layer will basically help you orchestrate the rest of the infrastructure for you I'll give an example of what uh you know this Beaker like and do in terms of decentralized sequencing so imagine you as a user or a customer you say Okay I want a certain type of roll up and you just specify your uh demand or request in certain format so I'm putting a Json file here where you say Okay I want uh to be connected to ethereum I want to use a certain dla like Celestia because

I don't want to pay ethereum's cost I want to start on VM I want it to be optimistic in nature and whatnot and what's really interesting is the last two part which is where you say I want my sequences uh I want two sequences and I want these sequences because you don't want random people to come and operate your secrets otherwise there's no accountability so you want these sequences to bring a certain amount of economic capital so you could say I want um my sequences to bring a certain number of tokens uh and it could be across different tokens so you could say I want people to stake from eigenlay and if you're staking through eigenlay you can come in and if you're seeking a minimum amount of eigen layer sde through eigen layer then you're allowed to become a sequencer for my roller so

you specify your requests here and then sequencers come and register the interest for this roll up so it's kind of like a marketplace where you uh match uh the role of Demands the demands from roller you know people who want to have rollups and people want to operate these Road upside sequences so uh the sequencer will then deposit the required economic collateral and stake and then the beacon layer so let's say for example you were you requested let's say two sequences and uh there's interest from I don't know three sequences to operate Your Role up and then there'll be some Randomness uh that Beacon layer picks up and using that Randomness it selects uh the sequences based on Randomness and some stake parameters for example

so that's that's the decentralization part so you could actually allow you move away from this AWS wrapper model to a much more open and decentralized model where uh the RAS vendor is not the only one uh allowed to operate the sequencers but anyone can potentially do that as well uh you could also uh do use we can layer for different types of verification purposes for example uh you could say Okay I want my um let me look at uh if you look at uh the Roll-Ups that exists today most of them especially optimistic roll ups many of them don't have fraud proofs so basically you're kind of trusting the sequence in some way uh and even if in some cases you do have fraud proof implementations it's not fully it's kind

of commission so you cannot you as a you know as a person cannot go and participate in for fraud proofing and challenging yourself so what you could do is you could build a kind of a decentralized verification Network where uh you will have this Beacon layer that uh sees and watches kind of it acts like a watchtower network of some sort where it keeps a track of all the blocks that are being produced across these roll ups and we'll have to see how this scales over time but it will keep track of some of these roll ups and we'll check whether the sequencers are producing things correctly uh and this way you do not have to wait for example for a challenge period and you could for example allow uh exit from the scroll UPS to the base chain or other daps if you have

and we are doing this with something that we call a proofability which is basically kind of like a Samy light client of some sort where uh you get a set of transactions and you get the last eight that you track and then you check whether the new state that is being proposed uh matches uh if you had executed those transactions then it wouldn't match the new state that the sequence is proposing so this could act as this uh middleware which verifies the state of different rollups and then it would allow you to do uh you know quick uh withdrawals and better interoperability um and by the way this also allows you to have let's say better or I guess tiered finality I would say because uh one thing is today most of the Roll-Ups that exist today both Z and optimistic

they all operate with single sequencer I mean there's no security issues with that but there's liveness issues and also the thing is that many dabs today rely on these sequences for fast final fast confirmation so basically sequences give you a receipt and say look I have sequence your transactions in a block and you do not have to wait for me to suppose the data back on ethereum and you can if you want you could go and uh you know update your adapt state in the UI on the UI side but if you had multiple sequencers then it gives you slightly better guarantees on that uh than just a single sequence and also it helps you with liveness so if one of the sequences were down you would still have other sequences to go and process your transactions uh so one thing is that because you have

multiple sequences the the guarantee that comes from this uh receipt that the sequencer gives you is much better than on the receipt that you get from a single node sequencer the second thing is because this uh beaconline is verifying your blocks uh roller blocks it also gives you kind of like a harder than soft finality so it doesn't give you the finality that you get if the data actually is on ethereum but it gives you some finality that it's in between so between the sequencer between the time and this you can sort of gives you the receipt and the time it takes for the sequencer to actually put the data back on ethereum and it gives you that a middle ground in that way so it gives you slightly harder than soft finality but in the in the end you are getting the finality guarantees from the

base chain when the when the sequencer has posted the data back on ethereum so it helps you a little bit with that as well and which allows you to have a better interoperability and seamless interpreter if you wanted to add that um very kind of wrapping up things uh a network like Beacon layer that acts as a middleware of some sort it helps you with decentral sequencing so uh some of the issues that you see with or you can imagine with centralized sequencing license such as resistance uh liveness issues that we have seen I think with several Roll-Ups already uh you could imagine uh centralized sequences uh I mean at the moment most of the simpler sequences are being operated by foundations themselves so you don't have issues with rent extraction and MAV Mev but if you had a sequence so simpler sequence of operating in a much more

open world uh this sequencer might be uh kind of doing Wind extraction and exploiting Mev so some of those issues go away because you know you have a decent class Network to to do that and it also as I mentioned earlier it because your network does verification you can build a much better interoperability protocols uh tapping into that and you could also potentially use that for governance so you could say because all these Roll-Ups are kind of tied to one base uh Beacon layer uh so if you wanted to update any parameters it could be easily applied to all the rollups that exist on that on on top of that vehicle well that's mostly it um thank you very much for your attention and if you have any questions uh I'm here uh you can ask me now but if you want to learn more uh

please go to docs.org.io thank you very much [Applause] there's a new one hour question I bored you didn't I mean if you're shy I'll be around if you have any questions later yeah shout out to the Dark Forest people um so in terms of these flash Roll-Ups that you were talking about when you settle to the main chain does the entire transaction history also get preserved and is it also easily you know viewable

because you know a lot of history is useful for you know plugging into machine learning and whatnot yeah because we offer this you know in an application specific setting so we let uh the the person who commissions of lastly decide on what they want to do with this data so they could say look um I want this role of this data to go back on the theorem you could put that uh if you want to put that on Celestia you could do that as well or if you say you know I'm fine with just hosting it on my I don't know small DAC committee you could do that so we're giving that flexibility to them but yeah I mean I agree that um if you want the The Da guarantees of your theme you should put that on on ethereum but we're leaving that up to the developer to decide where

they want and depending on their cost uh and what they can tolerate okay cool thank you so so thank you very much thank you very much thank you very much everybody [Applause] [Music]