Final EPF Development Update (Cohort 3) This is the final report of my project On-chain analysis of staking pools attestations. It was around the study of the analysis pools & how they impact the ethereum mainnet. Project Summary My main goal was to analyze performance of the validators controlled by the staking pools to validators that are not the part of any pool. If there is a notable difference between them then it meant that clustering of many nodes is impacting ethereum mainnet. When I chose this project, I was planning to utilize the existing tools, information & data that is currently available on staking pools to get a headstart. After exploring this for a week on different platforms & talking with various teams building on Ethereum it seemed like this type of data was either not easily available or was private information yet to be released. Briefly analyzing the information gave me an unsettling feeling that there might be some discrepencies & unaccuracies. Due to this, performing analysis on this data won't make much sense. Therefore I divided my main project into 2 parts. Produce a dataset after Identify & Labelling the network with different staking pools with low false-positives & higher accuracy. [Finished]Here my goal was to associate pools with their public keys & atleast identify >70% of the network which I was able to do.
2/28/2023EPF Update 10 This past week I have been working on finalizing & refining the dataset of the pools in the overall ethereum network. I foucused on Lido Finance, Binanace & Rocket Pool & few other smaller pools. Starting with Lido & Rocket pool, both staking pools have a complex system to identify their validators & address through which they deposited on the Eth2 deposit contract. My initial approach to identify these pools was using the etherscan-label feature which gives an starting point. But these cannot be marked as authentic or reliable as anyone can label ay address on eherscan. For both, Lido & Rocket pool, I manually extracted few address by quickly scanning through the displayed addresses & by reverse-sorting the addreses in my dataset in which the 'To' address was not the deposit contract. Then I dived deeper into the contracts for LIdo & rocket pool. Lido has a list of node operators i.e 30 at the time of writing from which which deposit to Eth2 contract. In their smart contract, they have a function that has two parameters, The index of node operator. The index of the deposit. This allows to get the node operator detail from which the addresses can be extracted by incrementing index. I quickly created a script to extract this information retrived the addresses which has a very low false positives.
2/28/2023EPF Dev Update #8 This past week, I have been working on indexing data and storing it in MongoDB. The data I am collecting is transaction hashes from the blockchain, specifically for the 'from' and 'to' fields. The process of collecting this data took longer than expected, as there were 286k transaction hashes to gather. However, I was able to successfully gather all of the data needed. In addition to the data indexing, I also worked on developing the front-end for retrieving data. This includes creating a search bar for users to easily search for specific data, as well as general statistics that can be displayed on the front-end. With the indexer and front-end development now complete, I will be working on integrating the two. I anticipate this step will take one day to complete. Once the indexer and front-end are integrated, I will be compiling the data. This process will also take one day to complete. Next steps After the integration of the indexer and front-end is completed, I will conduct thorough testing to ensure everything is working properly. This will include checking that data is being properly indexed and stored in MongoDB, as well as testing the search bar is working properly. Label & associate the addresses retrieved from the data to staking pools.
1/17/2023EPF Dev Update #6 I went through the resources shared by Mario last week and found a useful repository at https://github.com/alrevuelta/eth-metrics that has a list of staking pool addresses. In order to ensure data accuracy and reduce false positives, I decided to develop an indexer for the deposit contract on Ethereum. I have created a repository for this project, which can be found here. In addition, I explored different APIs for data retrieval and took the time to verify the events that were being recorded. I compared the data for the first batch in the MongoDB database to the data on the Ethereum blockchain to make sure everything was consistent and correct. Next steps Continue to work on the event indexer and refining it as needed & finalize the data. Get in touch with staking pool teams & eth-metrics devs to cross-verify the addresses of the staking pools. (This might take time)
1/10/2023or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up