Key Uploader for Lido (Ethereum2)
- Geth node (http, or websocket)
- Deposit data JSON file from
https://github.com/lidofinance/eth2.0-deposit-cli
. - Operator private key, and operator ID
- Clone this repository
- Run
pip3 install -r requirements.txt
- You are good to go!
export PRIV_KEY_PW="password" ## optional, so avoid entering at prompt.
./add_keys.py /path/to/deposit_data-1621943728.json --eth1-uri http://geth.node.com:8545 --operator 1 --pkey-file /path/to/private_key.json
The above will generate a TX based upon the keys and signatures in the deposit data JSON file.
Gas is, by default, set to 13500000 which is sufficient for 100 concurrent keys. It can be overridden by --gas
flag.
Additionally, the nonce can be overridden using --nonce
; by default it will use the next available nonce for your given account.
Licensed using GPLv3, as there is code re-use and inspriration from http://github.com/lidofinance/lido-oracle.