Decentralizing Ethereum with Cooperative Models
Ethereum Denver·Mon, Oct 9, 2023, 12:00 AM
Decentralizing Ethereum with Cooperative Models Pol Lanski human dOrg Pol Lanski is a blockchain industry veteran and decentralization maximalist. Lanski has been active in the space since 2014, starting out by mining dogecoin because he was late to mining big papa Bitcoin. He is currently the project lead at Dappnode, the easiest way to run web3 nodes, and a human at dOrg, the first DAO ever registered as an LLC. He hosts the dOrg Hot seat podcast too! In addition, Lanski has played a key role in launching several groundbreaking projects, including Hermez (now Polygon zkEVM) and Giveth, and was teaching tokenomics and ecosystem design at DAOEducation. https://twitter.com/Pol_lanski Miguel Prada CTO Diva Research in applied crypto & microelectronics. Currently building tech at Diva. https://twitter.com/pradavc
Transcript
Okay, how's everybody? I hope you're hacking a lot. Um, if you want to get distracted for a few minutes now, uh, yeah, we're going to learn a lot about um, decentralization and Ethereum and how we use cooperative models um, in order to face the centralization forces that are around uh, Ethereum, especially Ethereum proof of stake. Maybe we should do a little bit of an introduction um of the panelists today. I'm going to start with uh Ken Smith, rocket scientist at Rocketpool.
Hi Ken, how you doing? I'm doing very good and glad glad to be here again for day two of uh of Battle Week. We've got also Alvaro Reua from the status team. Hey guys, how's it going? Glad to be here with this last minute invitation.
And also we got Miguel Prada from Diva. Very very exciting projects. Um, hi Prada. Hey Bo, nice to meet you. And uh, and finally me Lansky from the Dabnote team.
So uh, we've got a panel that is huge. We've got a panel that is huge with uh with and with projects that are working on the protocol level on the consensus level, right? And this is something that in a in a place like this, you expect to find a lot more application level um application level people. You're probably hacking some applications. But I think it's a great moment to also introduce what's happening at the consensus level of Ethereum.
And uh maybe we could start by going very very quickly uh with what exactly proof of stake is and what happened with the merge. Alvaro I think. Yes sir. So before starting explaining what proof of stake is and staking I would like to interact a bit with the audience. H who has done any staking on any chain?
Can you raise hands? Okay I could see some hands up. Great. Uh can you raise hands? the ones that has done staking in Ethereum.
Okay, same hands. I think that's great. It could be test net also to totally fine. People also have to to take care of the test nets. So, h before going into this uh this panel, I would like to introduce staking because I can see that many people haven't raised their hands.
So, staking, what is that? What is proof of stake? As some of you may know, uh, last year, September of 2022, uh, Ethereum protocol had a significant change where the consensus model h switched from proof of work, so mining to proof of stake. So, the mining was stopped and the validators became the new miners, meaning that they are the ones that now have the power of proposing blocks, modifying the state of the blockchain. These validators are also getting the fees and they propose blocks every 12 seconds.
So h how do you become a validator? How do you get this power of proposing blocks? So you have to stake and this is the the main topic of this panel. You have to stake 32. You have to add some collateral.
you have to put some collateral in order to prove uh or to like um yeah h protect the network from uh spamming mainly. So after uh depositing a collateral of 32 then you can spin up a validator and then you can start staking and then uh yeah this is going to be the the main topic for this uh panel. Beautiful. Thank you for this introduction. So um as we can see proof of stake has sort of like the potential for tremendous decentralization right because all of a sudden you don't need to invest thousands and thousands of dollars on huge hardware requirements power the power consumption um and but in reality what happens is that there are in the way the protocol is designed right now there are quite economies of scale on having big operations there's econom of scale in running the infrastructure.
So if you set up the infrastructure for one validator, you can put you can literally put thousands of there in the same infrastructure and it'll you'll be a lot more cost efficient and there are a lot of economies of scale as well especially on me extraction. Um, and that's what this basically means is that we need to find ways to combat this centralization powers because big players big players with lots of infrastructure and big players with lots of ETH to stake, they have an advantage over solo stakers. So this potential this potential decentralization increase that we would have in protocols with proof of stake actually in practice it is not being realized. It is not being realized and we need some cooperative models that can help us um face these challenges. And we've got here one of the first uh cooperative protocols in in Ethereum, Rocket Pulp.
Even before um even before the the the Ethereum 2 or the the Genesis, Rocket Pool was already there. I've been following you for the longest time. It is my honor and pleasure to be here uh with a community member with a rocket scientist. So can can you explain us a little bit how RocketPool tries to combat decentralization forces? Okay.
Yeah. Um there's there's a couple of ways that rocketpool has been working. It is as you mentioned a protocol that has been envisioned uh for a number of years. I think it uh the genesis of it was in 2017 if I remember correctly and it really uh approached the area of being a fully decentralized fully permissionless a way to do pulled staking. And so I guess maybe it's it's worth mentioning just for a second what is pulled staking?
Pulled staking is a way in which you're able to run a validator with less than the 32 ETH uh financial obligation to stake on it. And the way it does it is it uses some stake by the node operator and it uses some stake deposited by just general Ethereum that are looking for something called a liquid staking derivative. Uh it goes by the initials LSD. They might be renaming that to liquid staking token because it's a it's a little bit more friendly, right? I see a couple smiles in the audience there.
I prefer, but what it is is a way in which you could stake your ETH and receive an ERC20 token that is redeemable in the secondary market and soon after the merge to be redeemable at full face value in various protocols to get the ETH as well as any of the income, the yield on that ETH. And Rocket Full uh launched a little bit after the Genesis launch. um it had a wait for one of the key uh improvements in the core protocol something known uh technically as an ox1 credential which surprisingly I think after the uh the the Shanghai Capella uh fork that's coming up here is actually one of the credentials that's required by all validators but it was something that RocketPool needed in order to validate. Uh so that's that's one of the ways that rocketpool has worked is by lowering the financial obligation but still providing security to the network. And then the second one that I think is absolutely critical is that many people that want to participate in staking do not know the technical means to run a node.
Right? Uh there's some hardware purchase that's needed. There's some a little bit of Linux knowledge that's needed. you have to run two client softwares uh just the way the chain is a consensus layer and an execution layer client. And one key thing that I give absolute credit to the RocketPool team on for doing is creating uh a very simple interface kind of a I I almost want to say a oneclick and done.
It's not quite there yet. Maybe Dap Node will be able to take it to that point. Uh but a very simple few commands you issue and you'll be up and running with the RocketPole software. Thank you. Just because of the mention absolutely this is already in test um you'll be able to run rocket pool with no command line at all just through the dab node interface and yeah it'll uh I I can't wait for it to be released.
I can't wait either. Um so there is another so apart from pooling staking there is another thing that we can do in order to leverage hardware to leverage the infrastructure um that that we might have for one node and uh this is this is something that's really really like I think 2023 is going to be the year of DVTs distributed validator technology and luckily we have Prada with us from the D.VA Diva team. Um do you want to explain how J.A approaches this?
Sure. Uh thank you Paul. So um as Ken was correctly mentioning uh there is one way which is basically pulling people together because they don't have enough ethers. They um bring 16 ethers from the operator and they bring 16 ethers from the sters and then you are able to collect the 32 ethers for validating while the operator doesn't need to put the the complete 32. So that already helps a lot because you can down like lower the bar of entry from 32 to 16 but still a big leap.
So uh we need to do better than that and DVT is a really powerful technology that can help us to bring uh operation to any kind of uh uh person that will have just a normal computer at home. They don't have high technical skill but they want to run a validator and they want to participate in the network and help decentralize Ethereum. So what it does is that instead of having a key in in a single node, you can break it into pieces and then each uh participant on this DVT pool will be able to participate as a cooperative and help of the validator test and uh produce blocks. Uh this way you can also reduce the collateral on each one of the nodes from having 16 ETH to if you have 16 nodes you can divide the 16 by the 16 participants of the pool of of uh operation and then each one will have to deposit only one E of collateral because the total cooperative will have 16 E. So with this introduction we will be able to um lower the bar of entry to one if or less uh for the operator side and people will be able to stake in Ethereum just by the same simplicity that Rocket and Dodeo is bringing uh by clicking a button being able to have a secure node uh automatically deployed and uh stake on on D.
VA. Yeah. So DVT DVT is kind of like a like a multisig for node operators. Is that a good a good summary? Yeah.
So generally multisigs are um something that in Ethereum are shown has u something that is on chain a smart contract where a smart contract checks many uh addresses that are sending signatures. But on this side DBT the main difference with the multisc is that it's a multisk on the cryptography side. So using cryptography you can break the key of validation to pieces but the way it works is very very similar to a multi. Yes. Exactly.
Fantastic. So in in this way it's called uh distributed validator technology because you distribute one validator one validator validate the validating power you distribute it among different node operators right which all which each hold one part of this validator key. Exactly. So that adds two benefits. One is resiliency.
So if one of the nodes fails, nothing happens because as long as the majority still validating, the validator will still be active. And at the same time, um it helps the centralize the power. So no one will have the full power over the validator, but it will be distributed among a group. So they can also not do things like stealing me or other type of things because they will have to concentrate with the rest of the group on stealing the me and things like that. Yeah.
Excellent. Okay. So I think um DBT technologies can help with the um the the economies or can can help fighting the economies of scale that big operators have by lowering this economic barrier to venture. Right? I I could run many many validators in one machine with without having without even having 32 ETH and I would be like putting my hardware to work on many validators and it would be a lot cheaper to to do as well.
Now the other aspect of uh being a big player at a scale is ME and um and I think I'm going to let Ken explain why ME in the hands of big operators is um is a problem. Why why are solo stakers um disadvantaged versus the um the big operators? Yeah. So just just a little bit for the uh audience here. So MEV stands for uh maximal extractable value.
Uh when you you know when you interact and when you transact with Ethereum, you provide a a tip uh an inclusion fee to the block proposer to try to get your transaction into the next block. Sometimes that's very critical and it's usually uh very critical when there is a large arbitrage opportunity, right? when you see an imbalance in the market and you can make money by uh balancing that market. Okay. And uh be one of the things that's interesting is when you look at the amount of me that is out there, it has this longtail histogram which means that there are sometimes maybe uh an NFT project drops, maybe a new token drops, maybe there's a large price change in the market, all of a sudden the demand for that block space goes up quite exponentially.
And there could be times in which a proposer uh the the a block builder right somebody that actually wants to insert a transaction will pay multiple ETH in tips right uh we call these lottery blocks when they happen and if you are a big centralized service right you're running a lot of validators statistically then it means that that more likely since you're proposing more of the blocks you will actually come across one of those lottery blocks Okay, if you're a solo staker, you may only have a few validators on the network and it will go months and months before you actually get to propose a block. And when you get a proposal block, it may not have much me in it. The actual amount of tips for that block might uh equate to maybe 0.0 uh one E or 0.005 E something like that.
So you end up with this longtail spectrum where the uh the mean is much much higher than the average. And so one way to kind of counteract that uh is something called a smoothing pool. And a smoothing pool is an opt-in service where solo validators or individuals on a protocol can instead of taking the MEV for themselves, they can kind of play a statistics game that says, well, I'll put it into a pool and I'll share it with the profit with everybody that participates. It's very much akin to the old days in miners when individual miners running the rigs in the garage and at home uh found it to be much more profitable, much more routine amount of income uh if they joined a mining pool. And so a smoothing pool is just kind of that same version of it.
And uh I know RocketPool has a smoothing pool available for their their validators that are in there. And um there's a great talk I did at uh the DevCon you can find up on uh the YouTube that just goes through the mathematics of it that actually shows that statistically you're you're more likely to to fare better by a significant means if you're in a smoothing pool than to play the game and buy your lottery tickets trying to win the lottery. Nice. Fantastic. Great explanation.
Um actually at DAP node we we got inspired by your talk and we're building a smoothing pool for solo stakers because as you very well mentioned solo stakers will propose a block a little we'll propose a little bit less than six blocks a year more or less and it is very very unlikely that one of these blocks will be one of these lottery blocks. Right? So if you pull with other validators um it is very likely that within a smoothing pool you'll have somebody that gets this lottery and we are all better off for it. So um but but how does a a smoothing pool work when we're dealing with solo operators? How can we ensure that the that that the um uh incentives are aligned and that we create this cooperative model that leaves everybody better off and also furthers the decentralization of Ethereum.
Alvado. Mhm. So um before going into this pool I would like to make a clarification regarding the rewards. So if you are a staker on an Ethereum uh there are two different ways of income. You have the consensus reward sorry you have the consensus rewards which are kind of stable this I'm not sure the the number now but it's a bit less than 4% a year uh the consensus rewards I won't go into detail but they are splitted into different uh groups but um what you need to understand here is that they are stable so you will get a 4% regardless of if you run one validator or if you run 10,000 validators on average but on the other hand we have the execution execution rewards.
So the execution rewards h could be me rewards as they were saying before or they could be the tips if you are not running uh software like me boost. So the thing here is that um if you are lucky you can have this lottery uh block right and then you can get a huge uh reward for if you propose this block. But as Paul was saying before um validators are expected to uh propose a year uh six blocks or less and the more validators that you have in the network this number goes down. Right? So the thing here is that this smoothing pool can help especially solo stakers meaning people running only one validator to get uh average on the reward.
So instead of having this high variance where you can get maybe 30% APR a year or maybe 4% APR a year. I think it's better to be safe and join this smoothing pool so that everyone can get the same APR regardless on the number of validators that we do that that you run. So uh in that note uh they are going to release hopefully soon and I am helping a bit in in this effort to uh develop a lot. Thank you for that. Um, we are trying to uh build a smoothing pool quite similar to the one that already exists in in Rocketpool where you can opt in if you want if you're a solo staker and you can join these smoothing pools.
So you will be getting rewards regardless of if you propose a block or not and uh you will be getting the average of the of the blocks that are proposed into this block into this uh into this pool hopefully helping reducing the economies of scales that uh that happens with this where solo stakers are clearly on a disadvantage. And how does how do we achieve that? How do we how do we coordinate with all of the players? Yes. So, uh this is quite tricky because um uh in Ethereum you can have smart contracts, right?
But the information that you can access in these smart contracts, I mean you can't access the information of the validators in these smart contracts, right? In the execution layer, you don't have access to the balance of a given validator, for example. So uh first of all uh the way that we are organizing this smoothing pool is that we ask you to post some collateral to add some kind of bond. So if you cheat we will h take this bond from you. This is the first way.
Once you have added this bond to the pool then we kind of trust you and we let you participate in this smoothing pool. And then the only thing that you have to do as a solo staker and this will be the dab node user interface will help you in order to to achieve this in a in a simple way. You have to select the fee recipient of our smoothing pool. So all the rewards will go to this smart contract aki smoothing pool and then we will run an oracle that every uh week most likely will compute the rewards that each validator can claim. H since we want to do this in a decentralized way in a centralized manner uh we will uh update the merkel root of this uh reward tree every week.
So uh um doing it like this it's fully permissionless we will start uh safe we have with a single Oracle running runner but uh over the term I mean of course this software is going to be open source so anyone can check how the rewards are calculated but of course over the the time we will let anyone uh update this uh this Merkel root in the smart contract and have some kind of consensus like actually rocket pool is is doing. So we we got this is amazing because it helps solo stakers be at the same level as as the huge players right so it it really counters the centralization forces these economies of scale but you said it's very simple you just need to put the the few recipient of the smoothing pool when you are a solo operator now how does this fit with DVT how do you how does it happen when you use DVT technology yeah so the DBT and in general liquid staking it's a bit more complicated because stakers the people that deposit ethers to get rewards and to get the shield um they don't want only the execution client rewards they want all the rewards including the beacon chain rewards so then we have to do the smoothing pool but include both rewards we have to do the smoothing on the execution claim rewards but we have to also include the the beacon chain rewards and do it evenly per and punish the operators that are not actingly uh aligned with the protocol. So that becomes a really challenging task that we're trying to solve at DA. Um and it needs to be done because the only way to fight the centralizing forces and of economy of scale is using cooperative models like the ones on rockool and damn node or diva to create uh a system in which people can opt in to participate and compete at the same level than the bigger centralized parties. So yeah, we are we are creating the same type of technology but trying to uh include all the rewards.
So people can just forget if you are a staker you can just deposit and forget and receive all the rewards from the beacon chain and the execution chilling and if you are operator you can also do the same. You can receive rewards from both part but you will have to deposit some some collateral to participate in the network. So you we can prove that you are aligned and you don't do any kind of malicious action on on the protocol. Yeah, brilliant. Thank you so much.
So, just to summarize, um I think we we've spoken about the centralization forces that proof of stake in the way it's designed with the Ethereum network that they exist. They exist. They are decentralization forces. But with Ethereum and using the same tools that Ethereum gives us, we can actually create cooperative models that help us coordinate solo stakers to help that help people um outside of these big partnerships, these big centralized actors. we can coordinate in order to be at least at the same level and achieve the same economies of scale while being a solo node operator.
And I think it's very commendable the people that we have here, we have a an amazing panel today. Um, and it's very commendable that we're we're all trying to do the same thing. We're all trying to to fulfill this dream of decentralization that it doesn't quite exist at protocol level per se. We need things like rocket pool, like DVT, like uh smoothing pools in order for uh in order to really push for this decentralization. So do not give decentralization for granted.
keep fighting for it because in another panel or right there we can discuss about the many dangers of not being a decentralized protocol. So uh it's only left to give a big round of applause for our panelists today. Thank you very much and let's fight for the centralization of Ethereum. Thank you guys. Thank you.
Thanks.
Automatic transcript — names and jargon may be misspelled.