Skip to main content

Add or change finality vote key

Overview

This guide demonstrates how to add a finality vote key to your profile. The finality vote key is used to vote for blocks in the fast finality mechanism. If you're an active Ronin validator, you need to have this key added to have the fast finality rewards transferred to your admin address by the end of the day.

Prerequisites

Generate a BLS key pair

Before you add a finality vote key, you need to generate a BLS key pair. The BLS key pair consists of a private key and a public key. The public BLS key is your finality vote key. For more information, see the Generate BLS key pair guide.

Steps

Step 1. Generate proof of possession

To prove that you own the finality vote key, you need to generate a proof of possession. The proof of possession is a signature of the public key using the private key. There are two ways to generate the proof of possession: using the Ronin CLI or using the Docker image.

Generate using Ronin CLI

  1. Ensure you have the encrypted BLS private key and password in your current directory:

    > tree
    .
    ├── bls_keystore
    │ └── all-accounts.keystore.json
    └── bls_password
  2. Run the following command to generate the proof of possession:

    ronin account generate-bls-proof

The command will return the BLS public key and the corresponding proof:

BLS public key #0: {redacted}
BLS proof #0: {redacted}

Generate using Docker image

  1. In the .env file of your node's Docker image, add the following line:

    GENERATE_BLS_PROOF=true
  2. Run the following command to start the node:

    docker-compose up -d
  3. Run the following command to view the logs:

    docker-compose logs node

The logs will return the BLS public key and the corresponding proof:

BLS public key #0: {redacted}
BLS proof #0: {redacted}

Step 2. Add or change your finality vote key

Note: The keys you generated do not have the 0x prefix. Before submitting the form, make sure to add the 0x prefix to the keys.

  1. Open the Validator Dashboard, then go to your account, and then click My profile.

  2. In the Finality Vote Key field, click Add key or the edit icon.

  3. Paste your BLS public key and the proof of possession.

  4. Save the change and confirm the transaction.

Cooldown period

After changing your admin address or fast finality vote key, there's a 24-hour cooldown period. During this time, you won't be able to modify either value.