Config File Check

Use these commands to verify if you have the correct versions of your configuration files. These are useful to check when you have an unknown issue

Check if you are using the correct node.vkey

cardano-cli stake-pool id --cold-verification-key-file node.vkey
  • The above will return your Pool ID if node.vkey is correct

  • If you want to see the Pool ID in BECH32 format, add ”--output-format hex” at the end of the above command

Check the Kes and Node vkeys inside node.cert

cardano-cli text-view decode-cbor --in-file node.cert
  • Top bytes show kes.vkey

  • Bottom bytes show node.vkey

  • The first int is counter, the second int is KES period

  • If the above values do not match your config files, then they are probably not the correct files. Look for the correct files from your backups or recreate the missing files.

Check if you are using the correct VRF keys

cardano-cli node key-hash-VRF --verification-key-file vrf.vkey
  • Check if the output of the above command is the same as the VRF Hash found in cardanoscan.io

  • If they do not match, you can look for the correct vrf.vkey or recreate the vrf.vkey from the vrf.skey using this command from your block producer:

cardano-cli key verification-key --signing-key-file vrf.skey \
--verification-key-file vrf.vkey
  • Copy the vrf.vkey to your cold machine

Check if you are using the correct KES keys

cardano-cli key verification-key --signing-key-file kes.skey \
--verification-key-file /dev/stdout
  • The output of the above command should be the same as the contents of kes.vkey except for description which will be blank

  • If you have lost kes.vkey, you can recreate kes.vkey by replacing ”/dev/stdout” with ”kes.vkey”

Check the on-chain version number of node.counter

cardano-cli query protocol-state --mainnet | \
jq ”.csProtocol[0].\”$(cat stakepoolid.txt)\””
  • The above command will output the current on-chain version number of node.counter

  • For the above command to work, make sure stakepoolid.txt contains your Pool ID in hex format (Not BECH32 format which has the word ”pool” in front)

Big thank you to ROOT Pool for sharing the main commands that inspired this section

Last updated