evm-labels
v0.0.3
Published
A public dataset of Etherscan labels
Downloads
154
Readme
Ethereum
| Label | CSV | JSON | Updated |
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------ | -------------------------------------------------- | ------------ |
| exchange
(Centralized Exchanges) | View CSV | View JSON | May 9, 2022 |
| phish-hack
(Phishing/Hacking) | View CSV | View JSON | May 15, 2022 |
| genesis
(Null/black hole addresses) | View CSV | View JSON | May 21, 2022 |
| token-contract
(ERC-20 and similar tokens) | View CSV | View JSON | May 25, 2022 |
More chains coming soon
Install
npm install --save evm-labels
# or with yarn
yarn add evm-labels
Use
You can install the CSV or JSON manually if you are not a dev. If you want to use this in code:
Exchange (CEX's)
import { exchange } from "evm-labels";
// A Coinbase hot wallet
const COINBASE_ADDRESS = "0x71660c4005ba85c37ccec55d0c4493e66fe775d3";
exchange.isExchangeAddress(COINBASE_ADDRESS);
// true
const NULL_ADDRESS = "0x0000000000000000000000000000000000000000";
exchange.isExchangeAddress(NULL_ADDRESS);
// false
Phish/Hack (Addresses that performed phishing or hacks)
import { phishHack } from "evm-labels";
// A Nexus Mutual Hacker
const HACKER_ADDRESS = "0x09923e35f19687a524bbca7d42b92b6748534f25";
phishHack.isPhishHackAddress(HACKER_ADDRESS);
// true
const NULL_ADDRESS = "0x0000000000000000000000000000000000000000";
phishHack.isPhishHackAddress(NULL_ADDRESS);
// false
Genesis
import { genesis } from "evm-labels";
const GENESIS_ADDRESS = "0x0000000000000000000000000000000000000002";
genesis.isGenesisAddress(GENESIS_ADDRESS);
// true
const OATHER_ADDRESS = "0x09923e35f19687a524bbca7d42b92b6748534f25";
genesis.isGenesisAddress(OATHER_ADDRESS);
// false
Token Contract
import { tokenContract } from "evm-labels";
const TOKEN_CONTRACT_ADDRESS = "0x5dd57da40e6866c9fcc34f4b6ddc89f1ba740dfe";
tokenContract.isTokenContractAddress(TOKEN_CONTRACT_ADDRESS);
// true
const OATHER_ADDRESS = "0x0000000000000000000000000000000000000002";
tokenContract.isTokenContractAddress(OATHER_ADDRESS);
// false
Contributing
Each label is currently pulled with custom scripts. Partially documented, partially not.
Phish / Hack addresses
- Install tampermonkey
- Copy scripts/phishhack-userscript.js to tampermonkey extension
- Open the URL
https://etherscan.io/accounts/label/phish-hack?subcatid=undefined&size=100&start=0&col=1&order=asc
. only support size = 100 - Open the chrome dev tools. Copy the outputted csv and json to
src/phish-hack
Genesis addresses
- Install tampermonkey
- Copy scripts/genesis-userscript.js to tampermonkey extension
- Open the URL
https://etherscan.io/accounts/label/genesis?subcatid=1&size=100&start=0&col=1&order=asc
. only support size = 100 - Open the chrome dev tools. Copy the outputted csv and json to
src/genesis
Token Contract addresses
- Install tampermonkey
- Copy scripts/tokencontract-userscript.js to tampermonkey extension
- Open the URL
https://etherscan.io/accounts/label/token-contract?subcatid=undefined&size=100&start=0&col=1&order=asc
. only support size = 100 - Open the chrome dev tools. Copy the outputted csv and json to
src/token-contract