Generating keys
First, you should register a stake pool using the following command:
cardano-cli stake-pool registration-certificate \
--cold-verification-key-file cold.vkey \
--vrf-verification-key-file vrf.vkey \
--pool-pledge <AMOUNT TO PLEDGE IN LOVELACE> \
--pool-cost <POOL COST PER EPOCH IN LOVELACE> \
--pool-margin <POOL OPERATOR MARGIN > \
--pool-reward-account-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file stake.vkey \
--testnet-magic 2 \
--pool-relay-ipv4 <RELAY NODE PUBLIC IP> \
--pool-relay-port <RELAY NODE PORT> \
--single-host-pool-relay STRING <The stake pool relay's DNS name that corresponds to an A or AAAA DNS record> \
--metadata-url https://git.io/JJWdJ \
--metadata-hash <POOL METADATA HASH> \
--out-file pool-registration.cert
Generating the artifacts
You will now need to generate all the following artifacts:
payment.vkey
payment verification key
payment.skey
payment signing key
payment.addr
funded address linked to stake
stake.vkey
staking verification key
stake.skey
staking signing key
stake.addr
registered stake address
cold.skey
cold signing key
cold.vkey
cold verification key
kes.skey
KES signing key
kes.vkey
KES verification key
vrf.skey
VRF signing key
vrf.vkey
VRF verification key
opcert.cert
operational certificate
opcert.counter
issue counter
metadata url
metadata hash
Payment and stake key pairs
Payment and stake keys
Generate payment keys:
cardano-cli address key-gen \
--verification-key-file payment.vkey \
--signing-key-file payment.skey
Generate stake keys:
cardano-cli stake-address key-gen \
--verification-key-file stake.vkey \
--signing-key-file stake.skey
Generate the payment address:
cardano-cli address build \
--payment-verification-key-file payment.vkey \
--stake-verification-key-file stake.vkey \
--testnet-magic 2 \
--out-file payment.addr
Cold keys
cardano-cli node key-gen \
--cold-verification-key-file cold.vkey \
--cold-signing-key-file cold.skey \
--operational-certificate-issue-counter-file opcert.counter
Key evolving signature (KES) keys
cardano-cli node key-gen-KES \
--verification-key-file kes.vkey \
--signing-key-file kes.skey
Verifiable random function (VRF) keys
cardano-cli node key-gen-VRF \
--verification-key-file vrf.vkey \
--signing-key-file vrf.skey
Upload keys to the block-producing node
On the Block producer, run:
mkdir keys
Use a USB drive to bring kes.skey vrf.skey
and opcert.cert
to your working machine and from there, upload:
scp kes.skey vrf.skey opcert.cert username@host:/remote/directory
Last updated
Was this helpful?