I’d like to code a small crypto portfolio app using python. So to track my ADA, I need to scan the addresses of my wallet.
I found Yorois feature to export a “key” and conveniently, it also states the derivation path. Unfortunately, I’m a noob with regard to key derivation and I’m a little confused by the encoding of the key, since it does not seem to come in a base58 format like BTC extended public keys.
So to have a common testing ground, I created a test wallet and this is the "key" that Yoroi gives me, when I go to Options=>Wallet=>Export Wallet=>Export:
95e74df114717de17ebfb24c05f9fd1c8019bb6f1de117eec10a43670a692866b837a4a5f51d62f3dc3d630d075c8e39e5294323ba146c386c48123aeef5438a
So how would I go about generating addresses from this key using python libraries or the cardano-addresses tool?
I already watched Cardano: NerdOut - Key Derivation by Andrew Westberg. Unfortunately, the public key used by Andrew was exported using Daedalus and not Yoroi and uses a different encoding.
So there are a two more specific questions, that may help with the solution of this problem:
- Did I grasp it correctly, that the key given by Yoroi just needs to be converted using bech32 and a xpub prefix, to generate a “standard” xpub key (e.g.
bech32 xpub <<< yoroikey
using the bech32 tool)? - Reading further info, I learned that Cardano does not use standard BIP-44, but BIP-44-Ed25519. But is this even relevant for the address derivation using a xpub key? At least, looking at an example for Byron addresses, it does not look that way, since the ed25519 library is just used at the very beginning of the derivation.
Thanks.
EDIT: Added key for testing purposes.