Eth2 clients does not have a way to auto-update public keys changes made in the remote signer, either imports and deletes. For this reason, eth2 clients should have implemented a way to update their public keys to the public keys loaded in the web3signer. To achieve this there are several approaches.
Check, compare and update remote keys between remote signer and eth2 client following the API standards:
- Check: fetches public keys from remote signer API and Eth2 client API
- Compare: compare both public keys
- Update: update public keys in the Eth2 client to be up to date with the remote signer, by importing and deleting.
This repository creates a binary to be used either in the Eth2 client validator container or as a separated service in the same compose
. It is intended to be executed every period of time, usually using tools such as cronjob
.
It must be executed with the following environment variables CLIENT_ADDRESS
, CLIENT_PORT
and NETWORK
i.e
CLIENT_ADDRESS=http://validator.prysm-prater.dappnode CLIENT_PORT=9000 NETWORK=prater ./auto-check-remote-keys
Run the compose development file with web3signer and a client to test the binary
docker-compose -f docker-compose.development.yml --env-file=./build/.env up -d