I am starting development with Cardano. I have created a Hierarchal Deterministic Wallet with both Bitcoin and Ethereum, so I am familiar with much of the terminology. I am trying to create a Cardano wallet, exclusive from cardano-node and wallet, instead using Blockfrost API. However, after deriving a keypair through ED25519, I am not sure the next steps. Bitcoin had a lot of documentation on how an address is created from the key, so it was fairly simple. I cannot find much on Cardano. Cardano states that...

The addresses are a blake2b-256 hash of the relevant verifying/public keys concatenated with some metadata that can be stored on the Cardano blockchain.

Im not sure what "some" metadata is, or how to even go about creating an address. Also I am hoping to create a testnet address if that matters. Thanks!

2 Answers 2


Here is an example of how to generate the public/private keys using the cardano-serialization-lib


You can install this lib in ReactJs, or similar and generate the keys

Alterantively I have a few examples of how to do this and a few other fucntions here: https://github.com/dynamicstrategies/cardano-wallet-functions


Cardano uses a similar BIP-32/39/44 structure as bitcoin and ethereum, so you can use the same mnemonic seed phrase to derive your HD keys as you do on the other blockchains.

To do so manually, I'd recommend installing the cardano-wallet software - it comes with all the tools necessary for deriving all key types (most notably. cardano-address and bech32. Refer to the official cardano-wallet documentation for instructions on how to derive the keys/manage addresses, or, when installed, just run cardano-wallet --help for brief descriptions of all the commands.

To be clear: cardano-address is the low level module that gives you fine control over public/private key derivation, and cardano-cli can then used to construct individual addresses (including staking addresses). Alternatively, you can use cardano-wallet to construct entire sets of addresses, and have their UTXOs automatically managed for you.


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.