Few different questions (keys, wallets)

Hello there. I’m new to Cardano, but got hooked, and I’m currently investing my time and money in this project. I really believe in it, and want to help maintaining the nodes network.

I decided I want to run the pool, and based on your guide I managed to set up two relays and am currently finishing setting up certificate for the pool. However, at some point I got a little bit confused. I though I understand most of it, but I’d like to avoid making stupid errors.

I am following the guide here: 8. Register a Stake Pool with Metadata — cardano-node Documentation 1.0.0 documentation

  1. What are cold keys really for ? When are they used (well, except for generating certificate/registering pool ).

  2. I understand the KES mechanics (that they change over time), but don’t really understand what are they for ?

  3. The same thing with VRF keys… what are they for ? There are so many variants of keys, and the guide does not really explain what are they for.

  4. My assumption is that staking address is generated using staking.vkey, and that this address is strictly for the purpose of receiving rewards. SO this cannot be the address that I use to hold my ADA ? Can I somehow use hw wallets like ledger nano ?

  5. Is payment address for the sole purpose of holding pledge and registration fee ? Again, can I use hardware wallet for this ?

  6. This one is more related to daedalus… how can I check my wallet balance using cardano-cli ? I have one of my hw wallets imported to daedalus, but don’t know how to check UTxOs or balance for it using CLI.

I would be very grateful if you could shed some light on these topic. Thank you guys in advance.


For 1,2,3 question:

  1. Can be ur daedalus wallet as well and yes u can import and use ur hw wallet but not for
    main wallet (u can use it as pledge wallet)

  2. Payment address is the address asociated with the wallet created (it will be use for managing the funds )

  3. First u will need to import ur hw wallet in cli and after that base on the payment address created u can check the balance from cli


1 Like

Hello @Alexd1985. Thank you for answering. The link helped me, thank you.

Regarding 4) by ‘main wallet’ you mean regular ADA wallet that I can use for paying, transferring money, etc. ? Here: 2. Creating keys and addresses — cardano-node Documentation 1.0.0 documentation they are saying that stake address cannot receive payments, and you are saying it can be used for pledge. If I can’t receive ADA on that address, how do I pledge any ADA ?

Regarding 5) So it is regular wallet address that I can use for paying pool registration fee, etc. ?

Thank you for your help.

I don’t know how to say it but any wallet which is delegated… has it’s own stake address created… of course u will not use that address for sending/receiving money (for funds operations u will use payment address)

Regarding 5) So it is regular wallet address that I can use for paying pool registration fee, etc. ?

OK, thank you a lot !

One more question: assuming I’ve generated payment.addr as in the guide mentioned… Can I somehow add this address to my daedalus wallet so that I have it in one place ? The problem is I don’t see such an option in Daedalus. You can import wallets from older Daedalus and use secret file, but no option of providing keys + address. Or am I getting this whole thing wrong ?


If u want to have control of the wallet in daedalus then u will need to import a daedalus wallet (with seed words).


Hello Alexd, first let me thank you for answering again :wink: I am clearly getting something wrong. Perhaps I should start over again:

I’d like to create a certificate for my pool. I’d like to pay pool fee (500ADA) and all other transaction fees fromy my Ledger Nano (imported to Daedalus). In order to submit pool certificate and delegation certificate I need to create some transaction, and therefore need my payment skey and vkey. I’m not sure how to get them from Daedalus.

Also, apparently daedalus can handle delegation, so perhaps there is a way to submit it from Daedalus ?

I am having the same confusion here, I would appreciate the help as well :slight_smile:


As I know the ledger can be use as a main wallet pool (for example if u will create a block u will need to pay the transaction fee… and with ledger the fee can’t be paid because the pin is required to confirm it)


U must create a main wallet (pool wallet) for registration cost and transaction fees then u can import the hw wallet and use it for pledge

For new wallet u have 2 option:

  • create new cli wallet
  • create a wallet in daedalus/yoroi and import via mnemonic/seed words


1 Like

Thank you @Alexd1985, as always, I appreciate your help!

1 Like

@Alexd1985, anothter basic question for you:

I am trying to send some ADA from my Yoroi wallet to my payment address in cli. Is there something special I need to do other than coping and pasting the receiving address from cli in the Yoroi wallet? Are Yoroi wallets and payment addresses created in cli interoperable?


Yes, copy the address from cli and paste it in yoroi… will be work; (yoroi and cli wallet are connected to the blockchain)
Anyway first time try with a small amount just in case


Thank you Alex, I will definitely try with 2 ADA first :slight_smile:

@Alexd1985, is it normal that my cli address starts with “addr_test1…”? It seems like I am getting an error when I try to send ADA from Yoroi wallet to the cli payment address I created.

test? Nope, is not normal… why test?


@Alexd1985 yes,sir. I was following the Cardano Stake Pool School guide — the instructions on this guide only create addresses for the testnet? Even the blocks my relay nodes downloaded are from the testnet? :slight_smile: I appreciate you educating me on this.

if ur files are named testnet not mainnet means u configured a pool for test

So I need to build my nodes on the mainnet all over again? What’s the easiest way to switch to mainnet?

Download the files for mainnet and restart ur node.



1 Like