Analyzing stake among validators in PoS blockchains.
This repository focuses on analyzing decentralization in Proof of Stake (PoS) blockchains by collecting and analyzing validator and staking data.
-
Clone the repository:
git clone https://github.com/sm86/decentralized_stake_insights.git -
Run the main file:
cd decentralized_stake_insights && python3 data.py
We only collect validator stake data on blockchains leveraging classical BFT consensus mechanisms and variants.
In other words, blockchains that require a super majority quorum (two-thirds of total stake) on every block. Below are the list of blockchains
| Blockchain | Consensus Mechanism | Reference |
|---|---|---|
| Aptos | Joelton | white paper |
| Axelar | Tendermint | docs |
| BNB (Binance) | Tendermint | white paper |
| Celestia | Tendermint | docs |
| Celo | IstanbulBFT | docs |
| Cosmos | Tendermint | blog |
| Injective | Tendermint | blog |
| Osmosis | Tendermint | docs |
| Polygon | Tendermint | docs |
| Sui | Mysticeti | docs |
For each blockchain, we save stake distribution data in CSV format, with two columns: address and tokens.
The CSV file has following format DDMMYY_blockchain.csv and is stored in data folder.
Added API for these metrics. Start the server:
python3 api/app.py
Access the data:
http://127.0.0.1:5000/metrics/<date>
The date has to be in right range, else you would get the following error:
{
"error": "No data available for the selected date. Please select a date between 24-10-2023 and today"
}