Michael Sproul, Hildebert Moulié, Toni Wahrstätter - Staking data panel moderated by Colfax Selby

EthStaker at Devconnect Istanbul 2023 · November 2023 · 33:28

This panel at EthStaker's Devconnect Istanbul 2023 event brings together perspectives on staking data, examining what metrics matter most for understanding validator performance, client distribution, and the health of Ethereum's staking ecosystem. The discussion considers how better data visibility can help solo stakers, pools, and researchers make more informed decisions about running and monitoring validators.

Speakers

Topics

From EthStaker at Devconnect Istanbul 2023, hosted by Eth Staker.

Transcript

well thank you guys for joining I we are about to start the staking data panel uh I'm very excited about it my name is kfax and I'm a member of the East taker community and I just want to let everybody know that when I agreed to do this agenda slot they did not tell me it was going to be between Danny Ryan and Justin Drake so we'll see how it goes um all getting set aside I'm actually super excited to talk about staking data it's a topic near and dear to my heart and I admire the work that all three of these gentlemen do here so I'm excited to meet you both today or all three of you today and and dive into this so instead of introducing you guys I'd actually like you guys to just yeah share your name and what you're working

on hello everyone my name is hild debert uh I work at Venture Capital firm dragonfly I am on uh Twitter and everything as Hill duby and I publish some data on uh Dune dashboards trying to make sense of who who has taked how much uh that's basically the high level picture yeah hi everyone my name is Tony I'm with the applied research group at the Firm Foundation and um I've been building some some dashboards recently um every dashboard that has thepix top level domain so it's tornado. pic censorship. p MEF boost. pic um mol.

piix and R.P and mainly focused on data and research at air Foundation hi I'm Michael spral um I work at Sigma Prime mostly on the lighthouse client um but my side hustle is working on block print which is this client diversity um data some of you probably were at my talk uh a few hours ago thank you so let's just start off with a quick high level what is staking data and why is it important to look at um so I think it has various components to it there's various ways to look at it you can see see it uh I I I look at it who staked how much and who is the entities that owns this this staking uh amount but then there's also

at a node operator level which is a whole different thing um there's just a lot of thing I think we covered different areas of staking so yeah for me it is the high level who St what but uh I'll let Tony talk about him yeah thanks um yeah what I'm very interested in is actually looking at all the validators and then trying to somehow cluster them on an entity B basis so in the end we normally we see all these independent validators um on the beacon chain but in truth we know many of these validators belong are belong to one big cluster and then it's very helpful if we somehow find some horis sixs or somehow some ways to Cluster these validators Al

together just um also this um links very well to to Danny's talk we want to know if there is some systemic risk to the valid dator how which um entity is controlling how many validators and then of course um how these entities are behaving when it comes to censorship and um all the math topics yeah I would just add to that and say that I think the the bacon chain is a real gold mine of data because there's so much depth that you can go into on all these different um metrics in different angles like you can look at you know who's controlling the stake you can look at how they're performing what Rewards they're earning what clients they're using there's just so many ways that you can sort of dice it up there's

a whole networking layer that you can look like dig into and I think it's just yeah like we probably have much more data to analyze than we have uh like resources to analyze it so yeah there's probably lots more projects that could be born out of this data for sure makes sense so on the topics actually pcking backing right off Danny Ryan's talk on the topic of centralization of folks who are staking eth uh we heard a lot about why it's important to look at but can you guys comment a little bit on like why it's a problem a difficult problem to solve and like why cannot why can we not always figure out exactly who's running validators and why are there different strategies to do that yeah um yeah first of all it's it's hard first

of all the problem is of course centralization so we don't want to have a few entities that um yeah that that have to obey a certain jurisdiction to run uh big amount of validators just because because um eum is credibly neutral right and as soon as we have validators controlling too much of the stake one could argue that we from time to time we lose more and more of this very important credible NE neutrality and then of course the second big thing is censorship so if we have many validators for example that have to look what ofac tells them and have to obey the ofac sanction list it becomes harder and harder for normal users I

mean currently it's only tornado cach and some entities that are not interacting that much with the chain but mainly tornado cach that is s sanctioned and for for example it becomes harder and harder not only for us people to use these very important privacy tools but also for me as a as a European right it's very hard to use Tado cach because also the European exchanges use the tools that are made in the US and um you get a risk score based on using tornado cash and stuff so I think that's a a very big Topic in in in the whole in the whole um staking um yeah yeah so like the the the actions of a set of validators can have an impact on the entire network yeah

right right yeah and therefore globally for the usage of ethereum right right yeah would you like to yeah um so the bulk of my work recently in terms of staking has been trying to tag uh entities behind those addresses and a difficult part is that all the decentral cized actors and and the protocols built on top of liquid liquid staking and all those are are very happy to be tagged uh some of the OES are not mainly centralized exchanges and stuff like this which can be a bit trickier um so it is hard at first also to to see who controls the state eth and I think it is fundamental to have this picture in order to you know Advance on the other

parts of uh of the discussion and and all this um so yeah I think uh I I I just wish there was more disclosures I guess from U Central exchange sides uh on the state amount yeah I I agree with everything that you guys have said but I would just say that like yeah I think this this tension is pretty fundamental that there's this sort of trade-off between openness and privacy and we want I'm stealing something that you said when we were talking earlier but we sort of want openness for the big end of town the staking pools and the the big operators like centralized exchanges but we want privacy for the individual validators so something that all of us have to balance in the tools that we're building is you

know not doxing and Outing solo stakers but at the same time sort of getting data that's useful that's definitely a tough needle to thread I guess um on the topic of centralization I want to talk a little bit about client diversity something that I'm really passionate about uh Michael can you talk a little bit about I guess just high level client diversity why it's important and then secondly like why is it so complex to figure out who who's running which clients yeah so um high level the reason it's important is that we just um we we don't assume that any of the software that we've built is perfect so if there's a bug in any client we don't want that to absolutely um destroy ethereum because there are various ways

since we've moved to proof of stake it's actually a little more risky um to have a concentration of um stake on a single client because if you you know if you finalize an invalid change it's it's basically game over for everyone that voted for that in invalid chain um they lose all their state pretty much unless we bail them out which we shouldn't do um so yeah that's that's kind of a difficult thing um and then like yeah in terms of the the client diversity data there's this again it's kind of a balance between um you know we could just ask people like oh what clients are you using but then these systems are always able to be GED by you know if there's if if you attach

any incentive to um say oh if you run the minority client you get an extra 10 bucks a week um then suddenly people have an incentive to go and like hack whatever that measurement is and then it you you'd basically be fighting a constant arms race to try and get ahead of people or you have to put something like basically like a DRM in the binary that says like oh there's a signing key in here and then you're fighting an arms race on DRM and that's like a real it's kind of anti-privacy as well because you're like outing your client usage without like you know the users um you know if it's opt out they may may not know about that so I think that's not a good idea um so yeah it's kind of we're just doing the best I think with what we've got and like trying to adhere to

the decentralized ethos of the of the project and the like sort of pro privacy thing yeah and maybe maybe just a little bit to add because um I was also using Michael's tool so it's open source blog print it's very nice and the cool thing about it is it you can pass in a block and it will classify that block so it doesn't need to it doesn't need you to set up a node and connect to as many peers as possible to then find out what client they are using but you can just take a block and then um look at certain features in that block for example how attestations are ordered what graffi the block uses and then come up with a quite reliable estimate which client is used because on the execution layer it's much

harder so the best approach there is probably to set up a node um max out the peers and then connect to as many other nodes as possible um ask them which client they are using and then disconnect again and yeah to do that um yeah to kind of expand on that as much as possible to get a a better overview of the whole network so it's much easier to just look at them per block basis but this is not possible on the execution layer because you can't look on only at the ex execution layer block and then tell okay this was for sure a GE this is a GE block or this is an Aragon block and so talking a little bit about the difference between like the

execution layer data and the consensus layer data a lot of the staking data that we're talking about is happening on the consensus layer can you talk a little bit about the differences between analyzing consensus layer data versus uh execution layer data yeah sure um I mean from the differences I could I could talk about how we leverage for example execution layer data in order to improve the our consensus layer data by for example looking at the deposit address for example many clients use one deposit address if they stake their Eve and then it's quite straightforward to just assume okay if it comes from one deposit address then it's one entity that deployed these validators there are

other horis STS um I think I think you found them out right um with looking it's more sophisticated horis that you apply to the con execution layer data to then find out okay if there is an address that is an active Staker while it has sent a few coin a few um Eve to the to some coinbase address then we know okay this is a coinbase ster so for some entities it's very easy you just look at the deposit address and say okay we cluster all these deposit addresses uh we cluster all the public keys that came from this came from the stake of a certain deposit address for some it's much harder because not sure if they try to avoid that they being clustered but they just

force us to come up with some hristic to then identify them maybe maybe you could expand on that uh yeah so at originally I was only tracking depositor address but there's many different ways and and the goal is to have simplistic table that has all the I guess all the taggings but with a minimal amount of lines so if one entity uses always the same address to initiate the transaction or the same address where the eth come from or the same withdrawal Keys you know you can all leverage all these different things and and tag that entity as a whole with the heuristic um and yeah I'm trying to make sense of it's not always the case some can only

provide uh you know the valid dator index or something like this uh which is harder to to work with I guess but um I yeah I try to make sense of this and I have a table that is for anyone to use on Dune anyone can download it anyone can contribute to it and add more entities that they have detected at themselves you're also free to reach out and if you want your own entity or you have a V2 or a V3 that is released with a new protocol uh underlying uh new underlying smart contract uh feel free to tell me and I'll make sure to add you um but I only touch on the execution layer data because um Dune currently doesn't have consent slat data I am

pushing them to add it hopefully that happens soon um and I actually I'm excited to once they have it to tie both together uh they are very different types of data um but I think the full picture needs both um so yeah I can let Michael talk a bit on this yeah this just uh brings to mind for me one of the issues we have on the consensus layer is that because the software is a little bit new we don't have um archive nodes that are maybe as efficient space efficient as the execution layer archive nodes um so running a CL archive node has been something that's been like quite difficult you need like I saw someone sinking one today and they they got to

six terabytes with Lighthouse before they'd even finished sinking so that's like pretty horrendous um we've got a long-term project to fix that we've got an archive node now that fits in 150 gabes for Lighthouse that's an experimental one um but yeah H to release that after denb but my our hope is that um this makes a lot of Beacon chain analytics just a lot more accessible because anyone with 150 gigs of space can just get an archive node and then um you know have access to a lot more uh historic data and just do whatever analysis they need to do yeah so so far we've been talking a lot about collecting data and analyzing it but there's really a whole another component about like visualizing this data and so

the awesome designs that you showed off in Block print earlier and you're talking today and then of course the dot pick websites and then Dune does a great job of helping visualize too I mean I think we're actually doing a pretty good job of visualizing the underlying data but I'm curious what you guys think uh and sort of where the big gaps are in terms of visualizing and really like translating this information into something that people can understand yeah like I think it's uh it's a it's a unique skill to be able to come up with um things that people intuitively understand when they see like I know that for me I've had to like work quite hard to iterate on my ideas to make them accessible and understandable and the the block print UI I think is hopefully understandable because of the work and the feedback

that I got from my colleagues um who were like what is going on here like what are you doing um and me then going okay I have to tweak how this works but yeah yeah I think I think on with on eum we are already doing quite a good job in making also sure that all these data is then open source um more or less I did the same research that I do now on etherum on bitcoin and it's much harder I can tell you much harder to get labels to addresses for Bitcoin there are some open source um databases they are very small but on bitcoin for example you can really see that these big players they have the labels they have all these taged addresses and they are not happy to share that with anyone so not even if

you're a researcher trying to do your trying to write a paper or something they would never share the data with you and for ethereum we already have um a really big portion of the whole stake identified we identify more and more solo stakers every day um and this is just nice to see that um that it's not only the big players that then have that data can use it can sell it um but it's more or less open source and everyone can use it so in terms of visualization I also iterated a bunch on on my dashboard over the years for the month uh I I started it a year and a half ago and at first no one really cared I guess about this data

and then e taker came by actually and and did a quadratic funding round where I was able to to get some um some money out of it when I was independent uh and that also pushed me to keep improving it and and keep it up to dat uh and you know I tried to present it in a way that you start with the higher level data and slowly as you scroll through you go deeper and deeper um because that tends to be how people react to what they want to see is the high level and then you know slowly dig in um and yeah it's I I think as an analyst you have kind of a two-part job which is one of them is making sense of the data but then also the second part is making it easy for

people to understand and presenting it in a really efficient manner and an easy way to understand if you if you see the chart you should directly know what you're looking at it shouldn't be bunch of labels complex complex to read and stuff so that you know it is uh otherwise if I see a dashboard and it's really really complex I just click away because I I don't necessarily have the time to process what is there and a lot of data is lost because of this I think just people who are amazing really really smart but don't necessarily put in the work on the visualization side um so yeah I encourage all analysts to actually um work on the the visualization I think it goes a much longer way than than the belief to get

the data out there and seen by the public so yeah I'm glad people are now yeah paying closer attention to the actual data that's going on related to staking um and so much the point that I see ongoing active public discussions around client diversity stake distribution censorship me and how to handle it what do you see as the the upand cominging sort of like new types of data analysis that we're going to start doing on staking or what are new uh things that we should start f focusing on next um yeah um very recently um we focused more and more on solo stakers so identifying solo stakers to also get a picture of how many solo stakers we actually have we were quite quick in

finding out who which validators belong to coinbase binance Etc but for the solo stakers it's much much harder to really know is that a solo Staker or is it maybe another binance valid dat that just pretends to be a solo Stak now and this is not that easy of course because there is no there's no hristic that says Okay a solo Staker always looks like this right but of course um many solo stakers for example many people have used their ens addresses to deposit Eve then you can look at is has this ens address been used with some big entity or not and most of the times you can then really quickly find out okay this we have a quite high probability of having identified a solo Staker and

through through that we so I would say the identifying more and more Sol stake is definitely something that is coming more and more to to this staking data cool I understand sort of the balance between privacy and publicness for solo St Solo stakers in particular if there is a solo Staker that's listening to this and doesn't mind publicly identifying themsel as a solo Staker is there a way they can do that to help you guys out um you mean they want to public be they do yeah they do want to say I am a solo Staker on this address um ideally there's some way we can prevent people from falsely claiming that but yeah if somebody's watching this is there any way they can help out I mean especially when it comes to solo stakers right I

guess privacy is very important so even if solo stakers will just provide um provide um their yeah it's it's really hard right because because at some point it's it's it should be anonymous and I mean solo stakers could reach out to me and and tell me please don't say it to someone else and include me to your data set but but anonymously I would do so but yeah I totally get why a lot of sto stakers don't want to be identified too right it also adds risks when you think of Dos attacks or yeah yeah it's it's it's it's just a you we have to find some balance between as Michael already said um yeah tagging and public um

publishing all the big entities while still respecting the privacy of the solo stakers makes sense and so in terms of other new things I recently heard about the new rewards API uh can you tell us a little bit about it Michael yeah um so this is sort of trying to fill in some some gaps that uh we felt were were there in the consensus layer data about rewards um there's historically been you know block explorers that will show you oh you were tested in this Epoch and you got a reward of this right and they sort of had had to reverse engineer basically the rewards algorithm that the consensus later uses so uh to improve on that situ ation um some some awesome fellows from the EPF it was actually the last round

um worked with us on standardizing a new API for rewards and um now there's sort of experimental support in Lighthouse and in teu and a couple of other clients where you can say okay at this Epoch what rewards did this validator get and sort of give me a breakdown by how they attested like whether they attested correctly and match the head whether they match the Target The Source um and then also for blocks which I think is really interesting showing the profit per block um which is something that I think clients compete on and should compete on um and is like a kind of fun for for us as client devs it's like a fun optimization problem to compete on that um and then with theb we've also got this cool thing coming where um

we're going to surface some of this rewards data in the um in the block production um pipeline so if you're running a validator client like vouch which uses multiple Beacon nodes um to produce blocks it will now at the moment it uses a heuristic to choose which block is the best but it will now get a little um HTTP header that says okay the reward from this block is is um such and such e you know three or whatever um and it can it can profit Max and just choose the best one and I think this is actually going to have a benefit for client diversity as well because it turns out that um at the moment vouch is preferring prism but from the Block print data that I have it actually looks

like Nimbus and Lighthouse are probably the more profitable um blocks so hopefully we'll see setups where people have Nimbus and prism side by side or Nimbus Lighthouse and prism it's going to choose more Nimbus and Lighthouse boxes which is going to sort of give us a better indication that there's you know these multi valid setups out there and so I enjoyed talking to you earlier a little bit uh Tony about how you got involved in staking data and making it more Visual and I of course know Dune is an amazing tool for people to just experiment and play around if somebody wanted to get involved and try and help out or just learn more about how to analyze staking data can you make any recommendation for how people can get started yeah so um currently I'm hosting an open source data set on MEF boost. p/

data so it contains more or less every block since the merge um with the valid the identified validator who proposed that block but also the relay that relayed the block the Builder who built it and it's open source everyone can download it it's a it's in parquette format um yeah I I've had I've made quite good experience with that so people are really using it um and it's it's also quite cool because any visualization that you can see on MEF boost. pic um can be generated from that data set so it's it's quite rich in information um but yeah if you know how to deal with that then it's quite simple to actually rebuild the whole the whole website very

cool yeah so I think so there's two parts to making data there's the data engineering and then the visualization and the data engineering with open data sets like his or I also have some on Dune uh I think those go a long way to make it easy to actually leverage those and and visualize what you want to see that may not be currently available um so I encourage anyone to play around with those data sets um if if you have trouble downloading some of of D you can always reach out as long it's not to put it behind a pay wall I'm happy to provide it um so yeah I encourage all researchers to dig into the data that may be angles that we are not looking

into there's so much space for many analysts to collaborate on um if you're a protocol or are staking yourself uh feel free to Signal which uh whether it's a deposit address or something you're using so we can tag you um um yeah I think uh just there's many ways to help so there space for for every contribution thank you so we just have a few minutes left so I want to close with one question and I'd love for each of you to answer and then we'll get some questions from the audience so given the view that you have on the ethereum ecosystem from analyzing all the staking data you've seen if you could wave a magic wand and either like change or fix

one thing about ethereum what would you change yeah that's a good question um I would say the I would it's not a change that I would propose to ethereum but it's more a change that I would propose to all these staking pools and especially the centralized ones to just be open with their validators to not hide them behind some very complex deposit logic and stuff because it's just it's it's very hard for us to find out who for example to call them out it's it's coinbase mainly right that have a very complex logic to somehow deposit into the B chain and the other one is is it steak fish going

be right right um and so it it would be much easier if everyone would just use one deposit address for depositing and if not if they would just have a simple GitHub Pages page where they would just put up their deposit address it's simple as that right and for for a big company this takes them a few hours to set up and it would help us a lot to really reliably the validators because sometimes people reach out uh actually we have 2% market share not only 1% and then you have to ask them yeah but what's your deposit addresses and then they're happy to provide them right but why not directly um yeah actively providing them somewhere yeah um I think coinbase is is

a good one um coinbase is really hard to track they started by making validators from like creating an address addess for every single validator so that was already a pain to track there's like 160,000 addresses they used to deposit e they lost like 1,000 e just in gas to do this and it is it is basically to hide themselves uh originally on chain I think now they they they Fork stake fish contract and and now are depositing from it but uh I just wish there was more transparency generally uh some way to at least for big actors like this uh to Signal publicly that they are behind those addresses uh would be great because even now I'm I'm relying on like

their quarterly reports to M check if the numbers match mine um I'm currently missing 3% uh for them so looking for those but um yeah it's it's it's it's kind of a catam mouse game where it's a it's the never ending one where actors don't necessarily first they don't necessarily have an incentive to disclose all this and and I I understand that of course uh I think for the sake of ethereum at large it would be great to have those disclosed and and yeah maybe there's a middle ground uh in there I don't really have anything to add so yeah I think let's do questions cool well thank you all for joining I enjoy chatting with you and I definitely learned uh a lot and I hope you guys had

a good [Applause] time um I hello test test one t one um I apologize for how many questions are built into this question but whose responsibility is it to fund the capture and Analysis of staking data because it's fundamentally important in cap in U Mac measuring decentralization but there's currently no incentive to building in ways to measure um and in fact incentives are the other way around there's incentive to hide your staking data and maybe like pretend to be a solo validator um so who's whose responsibility is it to fund that dat and whose responsibility is it

to make sure that there are ways to capture that data yeah I guess I guess there not that many incentive except from getting invited to a panel right so I think I think it's also in the responsibility of the stakers themselves especially the big ones right they care about the protocol so they might want to it should be an incentive enough for them to be very open and transparent and also um answer telegram messages is when you're when you're ask like how is your logic um how does the deposit logic look like so I think I think it's also the responsibility of the stakers themselves I don't think that yeah I'm not sure about how to fund

that of course it's of course there are many grants that are um happy to support um open data and dashboards but except from that um yeah I don't really have an answer how to fun that in a very sustainable way except from somehow spinning a business out of it like like dun did very well and yeah and rated as as Michael said um yeah I I think we're probably curious nerds at heart who just want to get that data of s so the incentive is probably curiosity I don't know if that's the same for you guys but it is definitely for me and I couldn't find this data when I wanted to

look into it so I got frustrated and thought I might as well do it myself and I you know I my incentive is is that yeah just in intellectual curiosity uh there is still like 18% or so that are somewhat undisclosed of who is behind this eth and I'm I keep trying to tag those but you know it has diminishing returns in terms of spent time spent and and what you discover over time um but yeah I it's it's really hard to fund anything that is kind of sector level you know um when a team is directly involved it is directly the data they're usually happy to fund it but when it is a whole sector and they comparing different uh protocols teams are actually probably

more interested in this but no one's willing to fund it as a whole uh like like he said is probably Dows and and uh pools of of of money that may be confound it but yeah I think uh luckily we have curious nerds I guess Ken do we have time for one more question take it away hny hello uh once we have more uh accessible and efficient CL archive nodes what type of insights and analytics you see becoming available um so I think something that would be really cool um and we've started working on this in Lighthouse is that we've got a um a validator UI and that's basically like a like a local block Explorer pretty much and there's

other people working on local block explorers like Autos scan um is really cool um so I think just uh it really improves the sort of accessibility of that data and you can like have your own data and keep track of your validators in terms of new things to build I don't I can't think of any really cool ones off the top of my head but I'm sure people will come up with like amazing stuff like basically yeah block explorers on steroids would be awesome in my opinion and then yeah whatever after that thank you well everybody please give another warm Round of Applause for our panelists and thanks for coming in