Developing a wallet service for cardano using cardano-walletapi. Having hard time aligning my existing HD wallet knowledge w/ cardano-wallet.

Need to create an address for an account [index 33] using HD derivation path. etc. m / purpose' / coin_type' / account' / change / address_index such as m/1852/1815/11H/1/1/33 where account is 11, change is 1 and address_index is 33 using cardano-wallet API

How can I do that?

2 Answers 2


cardano-wallets purpose is to allow easily manage your funds without getting too deep into certain complexity of deciding how to derive keys and addresses.

to solve it for you there is a cardano-addresses project that gives you much greater control over the key derivation paths.


medium blog on cardano-wallet answers my question. I've downloaded the latest release from https://github.com/input-output-hk/cardano-wallet/releases

Following command creates an address public and private key files address.prv and address.pub

cat $KEYS/root.prv
| cardano-wallet key child 1852H/1815H/123H/0/0
| tee $KEYS/address.prv
| cardano-wallet key public --with-chain-code > $KEYS/address.pub

1852H/1815H/123H/0/0 is derivation path purpose, coin_type, account_index, role, address_index

1825 is purpose cardano network

1815 is Ada Lovelace's birth year and ADA coin's code

123H is account index

0 is role. 0 is for change, 1 is for staking etc...

H means hardened

Following command generates a payment address. from address's public key.

cat $KEYS/address.pub | cardano-address address payment
--network-tag 1 > $KEYS/address.pay

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.