New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

ETHWarsaw 2023: Marek Olszewski, Celo - Celo's L2 Proposal: Scaling Up the Tempo of Transactions

ETH WarsawMon, Oct 7, 2024, 12:00 AM

Presentation - A brief talk by Marek Olszewski from Celo. This presentation focuses on the Celo's L2 proposal. Follow us for more updates: https://twitter.com/ETHWarsaw

Transcript

um yeah it's a real honor to be here today um my name is mar pvi I'm one of the co-founders of cell uh and fun fact my dad's actually professor at this University and so it's an extra treat for me to be here um uh today we're going to be talking about the Salo L2 proposal I'm just kind of curious how many people here show of hands heard about the L2 proposal earlier in the summer okay a few people mostly in the front so folks in the back you're in for a treat we'll talk about something cool today um and you'll see the use of a lot of emojis today um it's bit of a challenge for myself this year to make slides with Emojis and so if you like the format come let me know afterwards um either in person or on Twitter uh my handle is micore and so maybe just kind of as a show of hand who here feels like we are are or they or maybe their close friends are kind of using web3 products on a on a frequent basis I'm kind of just curious interesting okay well this is a good crowd so about 50% of folks raise their hand uh that's actually pretty amazing uh it's the first time that's happened usually it's closer to 20% but 50% is not 100% and that would still make vitalic sad uh shown here in the form of a cat Emoji because there is no emoji balic uh yet um and you know I'd say it's a shame because you know I think many of us are are really uh working hard um building for this kind of future where you know we want everyone to be rushing into the house of web 3 um this is kind of a scene from a Best Buy in the US on Black Friday uh probably pretty terrifying in person if this actually happened but as a metaphor you know this is pretty this would be be pretty exciting right all of your friends everyone that you know all the normies um kind of rushing in to use the products that you're building in web 3 uh and we're not there yet um this is kind of the current reality it's just the people who raise their hands in an empty department store running around having all the fun um but you know we're here to change that and um you know when people ask me what cell is one way to think about C is um kind of an evm platform that's working really hard to bring about that that future that we saw earlier uh it's really focused on ease of use on scalability and you know we're just laser focused on on making that happen um and so today we'll talk about both uh but before we jump into kind of the L2 proposal um I just wanted to give a really quick summary of what C is today um so today it is is an alt1 it's evm compatible alt L1 um with a really efficient proof of State consensus protocol uh that we launched 3 years ago uh it uses some of the same uh cryptographic um um um mechanisms that secure ethereum to today um but you know launched um two 3 years ago so two years before the merge uh and then critically um and this comes back to kind of that that image I showed earlier um much of C is really laser focused on building for ease of use and accessibility um and so that means um really great Mobile support um so cell has the sync called social connect that lets you send value to phone numbers even before the recipient signs up and it also has a ZK snark based like client uh and then critically you can also pay for gas with tokens on Cell uh account abstraction is a really big topic as of late um and a lot of people are excited about this future where you can pay for gas with tokens uh turns out on Cell you can actually do that today with EAS it's supported natively uh there's a special transaction type that you can use where you can specify the gas currency that you want to use and then just as a kind of a cherry on top um s launch with full onchain governance and one of the first proposals um that the community brought uh to governance uh was to make c a carbon negative chain uh which basically means that c has been um so the proposal past and since then the the chain itself has been buying carbon offset credits programmatically using block rewards um and so that's made c not just carbon neutral but even carbon negative other chains have followed suit um which I think is really exciting I think it's made the whole Space um it's really helped change the narrative about the space it's no longer something that's contributing to climate change but something that is actually helping to fight climate change uh and so that's really really exciting and because of that a lot of uh refi protocols have kind of made cell their home and so you can think of cell as having kind of two really big verticals a lot of mobile defi a lot of Mobile payment products and then refi products um and all of this uh has uh I think resulted in um a lot of interest in the platform as of late so even though it's a down Market when you kind of focus on especially mobile payments and kind of mobile defi uh people tend to think of these types of Pro projects or or products as kind of real world use cases and even in the down Market we're seeing a lot of adoption of these we're seeing a lot of growth in active uh addresses uh basically since February there's kind of been this big jump and then when you compare us to other chains uh nanson has a really nice table that kind of shows uh a whole bunch of chains that they're tracking and frequently uh consistently over the last half year we're kind of ranking number one when it comes to address change growth um so so so this is c um but I promised to talk about um the L2 proposals so uh wonder if they kind of switch gears and talk a little bit about that now um so you know one of the unique things about cello as an L2 is that it's transitioning to become an L2 from an L1 uh which means unlike other l2s that are launching today you know we have a bunch of constraints that are really guiding kind of our design uh as we think about what c as an L2 should look like um and I would say that those constraints have resulted in maybe two really important design goals uh that we've been thinking about um the first is around um the price of transactions so because solo is very scalable today um gas is quite cheap on solo and that has attracted a lot of you know I mentioned payment use cases um Community currencies micr lending use cases Universal basic income use cases types of use cases that wouldn't really make sense on a chain that's charging 20 to 30 cents per transaction and so one constraint One Design goal for this proposal is to keep gas fees low and our solution to this is to um leverage something called igen layer uh maybe just show off hands how many people here are familiar with igen layer okay maybe 20% um so just for the uh benefit of others you know you can think of igen lir it's an ethereum protocol on on ethereum ll1 um and you can think of it as a Marketplace for trust um and the the place for trust that IG L went to um is ethereum validators so who better than to go to the folks who are securing the ethereum network uh to to build this Marketplace of trust and the way they do that is they allow folks who are staking eth and running a validator to effectively reuse that eth uh to um use it as a bond against um to secure um other services that they may want to run um and of course because this is ethereum there's a lot of trust there's a lot of uh E2 validators um and uh with igen layer folks can opt into running number of additional services and one that the igen layer team itself is building is this thing called Igan da uh which is a middleware that basically is bringing um dank sharding to the ethereum ecosystem um I would say you know one to two years ahead of the eventual launch of dank sharding on on E2 um and so that's really exciting you know dank sharding is uh extremely bandwidth efficient it turns out that data availability isn't actually um a problem that is necessarily like expensive um from a bandwidth or mathematical P perspective to to do um and you know dank sharding is really nice algorithm for for bringing it um to the broader ethereum ecosystem but it is you know new and as a result it will take some time for ethereum to adopt it so in the meantime we have folks like aan da who are looking to bring it to us sooner um and so that will help us uh make gas significantly cheaper on solo um some people have been asking well what about Proto Dan sharding it's coming sooner could it be good enough um you know from everything we see it looks like Protank sharding is um not going to offer the same kinds of costs as igen VA and so for now I think we're still uh heavily in favor of igda um the second goal is is uh one around decentralization um so solell today is uh an actual active L1 with a lot of nodes running it um validators full nodes you name it um and it would be a real shame to kind of throw all that away and just move to a single machine um and have a centralized sequencer um and so instead um we've been working really hard on a design and an implementation uh that trans positions are current validator set into a decentralized sequencer Set uh and this is elegant for a number of reasons um I think most critically it uh gives us better sensorship resistance um and better uptime um and more broadly just creates a more decentralized system and you know because we've been running um an as an ecosystem uh an L1 for a while you know we have a lot of expertise in consensus protocols um and you know how to do this in kind of a production ready kind of manner um and then the third and final goal um and you know for the folks who are paying attention you might be wondering wait a minute that doesn't look like the number three um and it's true um it's not how I would show the number three with my hands but it is the only Emoji for three I could find so we're going to have to live long and prosper uh for now but I think for the folks who are even more astute uh I said there were two goals that we were kind of targeting um but you know as is uh typical with big software engineering projects you end up realizing that there's actually additional constraints that you might have um and that one ultimately kind of created this third goal uh which is one around finality so you know with this kind of laser focus on ease of use uh in the ecosystem you know cell launched with one block finality uh which means means that there are no reorgs on solo there's basically a proof of stake um protocol that creates uh token Economic Securities that prevent um these types of reorgs um and that is really nice for payment use cases for anything involving normies you know trying to explain to a normie why their transaction might roll back is something that we didn't want to do in our ecosystem and so we worked really hard to offer one block finality and keeping that in as an L2 it turns out is not that trivial um all l2s today as far as uh I'm aware do not offer this um and so we work really hard to create a design that actually allows us to offer one block finality um as an L2 as well and you know when you when you think about the um sources of um po potential reorgs in an L2 I would say there's two sources uh there's the L1 itself right ethereum can reorg um and then there's also the L2 itself which could potentially reorg say a sequencer shares one thing with um one party um but then ends up doing something else perhaps posting a different transaction bundle to ethereum that could cause someone to go oh wait a minute I thought this transaction would be included but it turns out it wasn't and therefore I have to reorg um and so um the design that we came up with basically uh solves both of these problems with uh two uh changes uh the first is to add slashing for equivocation so if our decentralized sequencer ends up signing off on one transaction bundle uh broadcasting that out to the L2 but then um uh ends up signing off on another transaction bundle and putting that on ethereum um then those sequencers would be potentially uh slashed um and so that's one way to use Economic Security to prevent kind of the L2 reorg but the other thing that we can do is um to prevent the L1 from impacting the L2 and to do that we can add a um delay uh to all Force transactions and all deposits um um that basically is you know over 12 minutes to allow the L1 to achieve finality before those transactions make it over to the L2 it looks like we lost the slides looks like the whole projector shut down so anyway uh I'll talk without the slides while they get get it figured figured out um so what does all of this look like well this part is going to be the most challenging U because I had a nice diagram with um our sequencers on the left um I da nodes in the middle um and then a bunch of full nodes um on the right with ethereum below and I was going to kind of walk through basically the life cycle of a block um so might might be important to have this slides for that uh so I'll give the folks maybe a few more minutes for that in the meantime anybody have any questions or any thoughts or you know uh want to share any excitement for eth Warsaw is this your first eth Warsaw guys it's everyone's second eth Warsaw that's really impressive holy um yeah well I you know I could perhaps rotate this TV and then people could kind of look at this one maybe that's going to be better um how's it looking back there I see two people up on a ladder working really hard for you guys did anybody go to the party yesterday yeah two people went nobody else went okay a few people went okay who's participating in the hackathon how about that okay any exciting ideas you guys targeting defi refi nfts none of those infrastructure I'm guessing um okay yeah yeah it's a really great question so for those who didn't hear it you know the question is as cell transitions from an L1 to an L2 um what will people have to do uh and the answer is well it depends what role you play on the network if you are a node oper Ator um like running a full node or a um validator then certainly you're going to have to uh upgrade your your node uh but beyond that it should be seamless for everyone else because the plan is to hard Fork into becoming an L2 um and so this will be a really nice seamless upgrade and while we're talking about that you know people sometimes ask me well what's the timeline you know where are you along this kind of Journey uh and the journey really started uh at ECC when clabs which is the company that I work for and I made a governance proposal uh to transition C to an L2 um that that uh received a lot of I would say great Fanfare um both people in the cell community and the ethereum ecosystem were were generally quite supportive I would say um and that followed with an actual onchain governance vote where people actually voted to to kind of enshrine kind of this proposal as kind of a a road map direction for the ecosystem um and so that that proposal passed with flying colors it was 99% um and since then the team has been working really hard to to execute on on the proposal uh obviously a lot of thought and work went into it before we even proposed it including kind of this architecture that I'm going through um and then we you know we started building uh we are waiting for igen layer and igen da to launch because that's a pretty Pinnacle kind of piece of The Proposal um and so you know that's going to launch in kind of Q3 Q4 uh and after that you know hopefully we'll be able to kind of do that hard Fork but it is going to be two hard forks and the first of which is actually happening next month um or this month I guess it's September today um so keep an eye out for that um and then after that once igen da launches they'll be the second hard Fork to kind of make that change so it should be seamless similar to the eth2 merge um you know hopefully it'll be an exciting moment for the whole ecosystem but it won't won't require any work for anybody building on top of cell or anybody using um products built on top of cell um which means that if you're participating in the hackathon this weekend and you're excited about having an L2 that allows you to uh create really easy to use experiences for your users if for example you want to create something that allows uh your users to pay for gas with tokens maybe they're sending stable coins around um and you want them to be able to pay for gas with that stable coin you can do that um you know today and you know when Sell Hard Forks into an L2 um then you know you won't have to make any any future changes um either and so that's quite elegant uh I'm going to assume that they're not going to get this fix fixed in time um yes second question thank you I saw a proposal some time ago that cell is moving to op stack from optimism and today you mention igen layer and I wonder if these are two different proposals or both things are in your road map yeah it's a great question uh so both things are in the road map um and so um to to provide these kind of three features uh decentralized sequencer cheap transaction fees one block finality you know there's no off-the-shelf um you know L2 um protocol that that we could leverage um and so we knew that we had to kind of roll up our sleeves and really get to work um but we wanted to start um with you know an existing codebase that's kind of been thinking about this for a while and that has a nice modular architecture and the op stack um has that and so we've been chatting with the op stack team about bringing some of these as public goods to the op stack ecosystem um so you know obviously um optimism and others you know are interested in having the centralized sequencers uh I think alt daas is something that they've long talked about um one block finality I think might be a little bit more bespoke and unique to cello um but you know certainly we're working hard to make these effectively public goods that anyone can benefit from hey we're back uh incredible yeah wo yeah uh thanks guys for working so hard in the back to make this happen that look restful okay so this is the picture that I tried to describe um um you know I wanted to kind of walk through the life cycle of one of these um um kind of blocks that kind of goes through the L2 um and you know as with any um L2 everything starts with uh a transaction bundle um in this case um uh proposed by one of the sequencers in this decentral cized sequencer set um so these decentralized sequencers they make up um a kind of a a set of folks participating in bft based consensus in bft based consensus you have the concept of a leader one of these leaders um kind of proposes uh basically a bundle of transactions that it pulls from its mempool and then it bro broadcasts it to all the other sequencers uh through bft based consensus uh those um other sequencers will effectively sign off on that transaction bundle um and uh and the way we do this today uh and and the way that we're going to be doing this in in the L2 is um we use BLS signature aggregation so that we can actually create a multisig of all of those signatures and then uh we also include a bit Vector so that you can have attributions so you can see who who signed off on on that block um and then um we we send that to kind of the IG da middleware um and IG da will effectively um uh guarantee that this data uh becomes published uh on its network uh and in so doing it then returns a IG da certificate that is effectively appr proofed that that data was published um and now we have the certificate uh and so now is the interesting part so now we we we post this certificate to ethereum um and this allows us in effect to basically order all transaction bundles uh that are being proposed by the L2 um using using the L1 and then any full node on the network can actually download the certificate um from ethereum and then begin the kind of block derivation step um and you know the the first thing it has to do of course is to go to igda turn that certificate into a transaction bundle and into that BLS multi signature and bit Vector uh and once it has that it has everything it needs to effectively um uh sync with the L2 for that block it can execute those transactions um but before it does that it has to first check that um this multi- signature is valid that 2/3 of the sequencers in fact signed off on this uh transaction bundle um and it does that by uh looking at the bit Vector aggregating all of the public keys for all of these sequencers and then verifying the signature with this kind of group um aggregated public key uh and this is important because I think uh some folks when they think about decentralized sequencers they say well you know we can check this on ethereum right in a smart contract um and that's definitely one design that that has been floated around but if if we do this at the full node level then we can do this in a way more gas efficient way um and so it's it's a pretty nice um kind of little little Innovation now um and once all of these things check out and you actually execute the transactions you end up having kind of this derived uh block now one thing that pack does that's really quite nice is um it has a P2P Network that allows um nodes on the L2 to gossip these things called unsafe blocks so these are blocks that have been um signed off by the sequencer but that haven't made it through the L1 um and and so we're we're keeping this as well uh but when you do this you have kind of this interesting uh potential issue which is that if those unsafe blocks uh differ from what you're now seeing coming through the L1 then you have kind of the potential risk of um a reorg right like if you see something different uh uh on the PDP Network then you see from the L1 you might end up having to reorg and so that kind of creates an issue for our one block finality and the solution here is of course what we talked about before if any full node sees this then there's evidence that the decentralized sequence or Set equivocated uh and you can use that evidence to effectively slash them and this is something that we do today uh we have this in the in the L1 and so we can reuse this to effectively add slashing for equivocating in the L2 as well cool so in summary you know this ends up giving you low G gas fees um one of the things that I think few people realize when you're using um most l2s today and you're using the L1 for uh data availability you're paying 95% of your gas fee is going towards just data availability and as I mentioned before uh data availability is effectively an embarrassingly parallel problem you can actually solve this um in a way that requires much less B with much less trust um and so by using IG da we can in effect slash a big portion of that cost uh up to 95% of it um and one of the really nice things about I da of course is it's still run by ethereum validators um and so it offers really nice trust assumptions um we also have you know great decentralization through this decentralized sequencer set and you know this is just really helpful for up time time and for increased censorship resistance um and then finally um one block finality um we really believe that it's quite helpful for users for for developers building for users who um you know don't want to be confused by things like reorgs uh but we also think that um this could be interesting for l3s if you're if you're interested in launching L3 that can offer ethereum security but also cheap gas fees and one block fality um then you know the future state of cello could be actually a nice place for you to roll up to because you'll get to inherit all of these kind of benefits that we're working so hard to provide um and then you know coming back to that question uh from the gentleman there earlier um you know all of this will be done through a hard fork and so it'll be fully seamless for for users um and people deploying uh contracts on top of the platform um and that's of course really exciting because if you're again participating in this hackathon you're excited by what you're kind of learning about and you you want to uh build on top of cell you can get started today and then when the hard Fork happens um all of that you'll get all the benefits of cell becoming an L2 in the future um and just on that note if if you are interested in in building something uh this weekend uh and you perhaps you're interested in kind of building for people on mobile devices you know there's uh 7 billion smartphones now in the world I think 80% of people um say they use a smartphone on uh on their toilet uh which is an incredible stat because it means that 20% of people lie um you know there's a lot of eyeballs to be had by building on mobile and if you are interested in doing so I would highly highly recommend checking out Vora um valora really uh exemplifies um an app that is leveraging all of sellers features so you can you can pay for gas with tokens on Cell you can send the stable coin to someone pay for that transaction fee in that stable coin you can send you can you can sync your contacts with the app and send value to phone numbers um it's really quite elegant and it's also a signing wallet so you can use it with your daps um and uh one thing that we keep hearing from dap Builders at Vora uh is hey you know I you know having a we app is cool uh connecting your wallet to it is nice but really I want to be closer to the user I want to offer functionality in the wallet itself can you help me do that and the answer as of recently is yes uh Vora Now is offering this thing called shortcuts which are these kind of One Tap actions that uh you can kind of uh send via push notification to your users through the wallet um to kind of push them through maybe some funnel that you have you know get them to go to the next step um and so if that's at all interesting to you def check out Bora and and the docs for valora at docs. valora doxyz um it's it's really nice for um kind of building these really easy experiences for your users um so that's everything yeah thanks for bearing with me through the technical difficulties and yeah I'm around if you have any [Music] questions

Automatic transcript — names and jargon may be misspelled.