Validator Onboarding
SEDA Chain validators perform various signing duties for the SEDA Protocol.
Contents
Syncing Node Create-Validator Transaction SEDA Key File Without Encryption
Syncing Node
In order to create your validator, first make sure your node fully synced to the latest block height of the network.
You can check by using the following command:
In the output of the above command make sure catching_up is false
Create-Validator Transaction
Create a validator.json
file and fill in the parameters of the create-validator transaction:
Starting with v1.0.0
, SEDA Chain requires validators to generate SEDA Keys and register their public keys to perform signing duties beyond consensus signing. SEDA Keys currently consist of a single secp256k1 key used to sign batches.
The create-validator transaction will automatically generate SEDA Keys, save the key file, and register the public keys. Before executing the transaction, check the relevant app configurations and modify them in app.toml
as necessary.
We recommend that you fully set up the node(s) for validation with SEDA key signer before sending the create-validator transaction. To accomplish this, run the create-validator transaction with the --generate-only
flag to generate a SEDA key file without actually sending a transaction.
Take note of the encryption key for the SEDA key file. This encryption key should be set as an environment variable SEDA_KEYS_ENCRYPTION_KEY
in the node environment. In a basic setup, this means stopping the node, executing the export command, and re-starting the node so that the environment variable gets picked up by the node.
If you are using systemctl to run the node, add the environment variable by editing the service file, reload the daemon, then restart the node service.
If the signer has been set up correctly, the following message should appear in the log:
Since the SEDA key file is used by the SEDA signer at the application layer of the chain, if you're using Horcrux, you must copy the SEDA key file to all your sentry nodes. Make sure that the signer is correctly loaded by checking the success log message on each sentry node.
Once your validation setup is ready, send a create-validator transaction with the --key-file
flag pointing to the SEDA key file and the --key-file-custom-encryption-key
flag. The latter flag will prompt you to enter the encryption key.
You can find your validator operator address using the following command, which you can advertise to receive delegations:
SEDA Key File Without Encryption
Although we advise against this approach, you may generate and use the SEDA key file without encryption.
First, change the allow-unencrypted-seda-keys
configuration under the [seda]
section of the app.toml
file to true
. Alternatively, run the following command:
Then, run the create-validator transaction with the --key-file-no-encryption
flag.
Last updated