I have a wallet for testnet that I was using for some experiments, I created it using cardano-wallet CLI, generated some recovery phrase that I thought I stored, but probably never did because it was of low importance on testnet and generated root.prv from that recovery phrase.

So, year later, now I am in a situation that I have this wallet on MacBook (I know its password), I don't have the recovery phrase and I want to also move it to another computer.

Daedalus only support recovery of wallet using recovery phrase, but I don't have that, I only have the root private key, which should be enough to regain full access to the wallet.

How can I "recover it"?

NOTE: I don't want to just transfer funds from there to a new wallet, this wallet is used as a testnet stake pool owner wallet, it would be too much work. Also this information could be useful to someone else in the future, so please try to answer the question instead of suggesting some workarounds or telling me it's a bad idea :-)

  • Does the root.prv file start with "root_xsk"?
    – zhekson
    Commented Jan 22, 2022 at 18:22

2 Answers 2


You can copy the wallets directory in the Daedalus state directory of the old system to the new system. Daedalus Diagnostics in menu should have a link to where the state is on your operating system.


If the root.prv file is all you have, you could "recover" it by re-deriving the secret key files using cardano-address and cardano-cli (which you should get from the official sources (e.g. cardano-addresses github, etc.). Reminder to verify the binaries or source you build from).

Assuming you already have cardano-address and cardano-cli setup in your PATH. The commands could be something like this:

# Payment secret key from root.prv
cardano-address key child 1852H/1815H/0H/0/0 < root.prv > payment.xprv
cardano-cli key convert-cardano-address-key --shelley-payment-key --signing-key-file payment.xprv --out-file payment.skey

Note: you might need to update the derivation path accordingly if your wallet is a Byron-era wallet (e.g. 44H/1815H/0H/0/0).

From this point, you can derive your Verification Keys using cardano-cli if needed. Something like this:

cardano-cli key verification-key --signing-key-file payment.skey --verification-key-file payment.evkey
cardano-cli key non-extended-key --extended-verification-key-file payment.evkey --verification-key-file payment.vkey

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.