Stake T tokens to the Staking Provider account according to the instructions received from your Staking Provider or the Threshold Network Staking Guide.
Once the tokens are staked the one controlling the Staking Provider account has to register an operator for the Random Beacon and TBTC applications.
Caution
|
An Operator for the Provider registration can be submitted just once. The Operator address assignment cannot be updated. |
If a Key File for the Staking Provider account is available the registration can be performed from the Via Keep Client.
Another way is registration from the Via Web Browser.
Note
|
For the Keep Legacy stakes the Staking Provider account and Operator account are the same. |
An operator-registering transaction can be submitted with the Keep Client.
The commands that should be used are provided below. You need to replace a few values in the commands:
-
ETHEREUM_WS_URL
- an URL to the Ethereum WebSocket API, -
STAKING_PROVIDER_KEY_FILE_PASSWORD
- a password used for the Staking Provider Ethereum Key File encryption, -
STAKING_PROVIDER_KEY_FILE_NAME
- a name of the Staking Provider Ethereum Key File, that is expected to be placed inside theKEEP_CLIENT_CONFIG_DIR
(config/
directory). -
OPERATOR_ADDRESS
- an Operator address that will be running the Keep Client.
Command templates for the supported applications:
-
Random Beacon application (
RandomBeacon
contract)
ETHEREUM_WS_URL="<Ethereum API WS URL>"
OPERATOR_ADDRESS="<Operator Account Address>"
STAKING_PROVIDER_KEY_FILE_NAME="<Staking Provider Account Key File Name>"
STAKING_PROVIDER_KEY_FILE_PASSWORD="<Staking Provider Account Key File Password>"
CONFIG_DIR="<Path to the directory containing the Staking Provider Key File>"
docker run \
--volume $CONFIG_DIR:/mnt/keep-client/config \
--env KEEP_ETHEREUM_PASSWORD=$STAKING_PROVIDER_KEY_FILE_PASSWORD \
us-docker.pkg.dev/keep-test-f3e0/public/keep-client:latest \
ethereum \
--ethereum.url $ETHEREUM_WS_URL \
--ethereum.keyFile /mnt/keep-client/config/$STAKING_PROVIDER_KEY_FILE_NAME \
beacon random-beacon register-operator --submit \
$OPERATOR_ADDRESS
-
TBTC application (
WalletRegistry
contract)
ETHEREUM_WS_URL="<Ethereum API WS URL>"
OPERATOR_ADDRESS="<Operator Account Address>"
CONFIG_DIR="<Path to the directory containing the Staking Provider Key File>"
STAKING_PROVIDER_KEY_FILE_NAME="<Staking Provider Account Key File Name>"
STAKING_PROVIDER_KEY_FILE_PASSWORD="<Staking Provider Account Key File Password>"
docker run \
--volume $CONFIG_DIR:/mnt/keep-client/config \
--env KEEP_ETHEREUM_PASSWORD=$STAKING_PROVIDER_KEY_FILE_PASSWORD \
us-docker.pkg.dev/keep-test-f3e0/public/keep-client:latest \
ethereum \
--ethereum.url $ETHEREUM_WS_URL \
--ethereum.keyFile /mnt/keep-client/config/$STAKING_PROVIDER_KEY_FILE_NAME \
ecdsa wallet-registry register-operator --submit \
$OPERATOR_ADDRESS
Note
|
[flask] For Testnet add --goerli flag to the commands executed above.
|
An operator-registering transactions can be submitted with Etherscan.
For each of the RandomBeacon
and WalletRegistry
contracts perform the following steps:
-
Find the address of the contract and open it on Etherscan (see below).
-
Go to
Contract
→Write Contract
tab. -
Connect your wallet with
Connect to Web3
button. -
Submit the
registerOperator
function with your Operator address as an argument.
Please see the Ethereum Mainnet Contract Addresses page for the recent Mainnet addresses of the contracts.
Note
|
[flask] For addresses of Testnet contracts please visit the link. |