Node Operator Manual
Step-by-step guide for Node Operators
Steps to become a Tranchess node operator
Provide Tranchess team with a
name
for display, and an addressoperatorOwner
for operator registration. Note thatoperatorOwner
holds the admin role for most properties of a registered node operator. Please properly secure the access. We recommend leveraging hardware wallets like Ledger to keep its private key.Wait for the Tranchess team to register you in the smart contract. Once registered, you are assigned with a unique
id
,withdrawalCredential
andwithdrawalAddress
id
is your node operator ID, which could help you look up all relevant data on profile through theNodeOperatorRegistry
contract deployed at https://etherscan.io/address/0xE926F01953c3B94222FcAC7474b31e3F8eAfb308withdrawalCredential
is required for generating thesignature
in Step 3withdrawalAddress
is required for configuring beacon chain validators in Step 5
Generate
pubkey
andsignature
for a few validatorsUse 32 ETH as the deposit amount
Use the
withdrawalCredential
in the previous step10 validators are enough to start
All validators’
pubkey
andsignature
can be found in the generated deposit data JSON file
Navigate to Tranchess Operator Portal. Drag and drop the generated deposit data JSON file to the right column. The tool is designed to conduct several sanity checks such as key lengths and duplicates. If all looks good, click the “Add Keys” button to initiate the
addKeys
transaction. (You can also manually assemble the transaction. Please refer to the specific operation in the "Alternative Step 4" section below.)
Alternative Step 4Pack
pubkey
andsignature
into bytes arrays and submit them to the registry contract using theaddKeys
method:
Navigate to the “Write Contract” tab: https://etherscan.io/address/0xE926F01953c3B94222FcAC7474b31e3F8eAfb308#writeContract
Click ”Connect to Web3” and connect your operator owner address
Expand the first function
addKeys
and fill in the parameters as follows
id
: Node operator ID
pubkeys
: Concatenate all pubkeys and add a “0x” prefix
signatures
: Concatenate all signatures and add a “0x” prefixOptionally, you could send the encoded
pubkeys
andsignatures
to Tranchess team in advance so that we could verify the submission before you sign any transactionClick the “Write” button and sign the transaction
5. Configure the execution layer fee recipient of the validators to withdrawalAddress
(see your validator’s doc for more info about fee recipient, e.g. Prysm Doc and Lighthouse Doc). Make sure that the validator node has already gone live, since the validator key assignments could happen any minute following Step 6.
6. As the operatorOwner
, you could now lift up the depositLimit:
Navigate to the “Write Contract” tab: https://etherscan.io/address/0xE926F01953c3B94222FcAC7474b31e3F8eAfb308#writeContract
Click ”Connect to Web3” and connect your operator owner address (if you haven’t done so)
Expand the 7th function
updateDepositLimit
:id
: Node operator IDnewDepositLimit
: The new maximal number of active validators assigned. We recommend it to be the current total number of validator keys, but it could go beyond the current total validator keys.
Click the “Write” button and sign the transaction
7. Optionally, you could also update the rewardAddress
, which will receive operator fee in the future. By default, it is the same as operatorOwner
.
Steps to batch remove unused validators
In rare occasions when signature verification failed for newly added keys or when withdrawal credentials got an update, the Tranchess team will send out a notification for the corresponding operator to truncate all used keys
Coordinate with Tranchess team to find out the keys that will be removed;
Invoke
truncateUnusedKeys
to truncate all unused keys.
Last updated