Making a key
A Yamale key is an ordinary Cosmos key: BIP-39 recovery phrase, coin type 118,
m/44'/118'/0'/0/0, secp256k1, bech32 with the yml prefix. That is
deliberately boring — it means Keplr, Leap, Cosmostation and a Ledger all derive
the same account from the same phrase, and nothing about this chain requires a
wallet written for it.
You need: the yamale-wallet binary (make wallet). Nothing else — the
tool contains no network code.
You will end with: a recovery phrase, its addresses, and optionally an encrypted keystore a node can import.
Generate
yamale-wallet new
Recovery phrase — write it down now. It is shown once and cannot be recovered.
1. need 2. veteran 3. night 4. prepare
5. author 6. when 7. canal 8. census
…
Account 0 (m/44'/118'/0'/0/0)
address yml10g95zugh266522vgp23uzs9jjqgaa09dkdgwhe
valoper ymlvaloper10g95zugh266522vgp23uzs9jjqgaa09dqnyl67
Twenty-four words, not twelve. Twelve is legal and common; the extra entropy costs nothing to write down once, and it is not a decision worth making while looking at a screen that is showing you a key.
The valoper line is the same key in validator form. It is not a second
account — the middle of both strings is identical, because an address is a
prefix around one hash of one public key.
Several accounts from one phrase:
yamale-wallet new --accounts 5
Carry it to a node without retyping it
yamale-wallet new --armor wallet.asc
blockchaind keys import treasury wallet.asc
The file is encrypted with a passphrase you choose and written 0600. It is the
same armored format the node's own keys export produces, so this is import,
not conversion.
Verified end to end: a key generated by the tool, exported, and imported into a
node produced the identical address — and the tool's addresses match
blockchaind keys add --recover at every index.
Check an existing phrase
yamale-wallet recover --accounts 3
It refuses an invalid phrase rather than deriving from it. That check matters more than it looks: BIP-39 will happily hash any words you give it, so a phrase with one word mistyped produces a valid-looking address for an account nobody can reach. Failing loudly is the only useful behaviour.
What the tool will not do
It has no network code, so it cannot check a balance, and that is the feature. The machine that generates a key holding money should not be the machine that talks to the internet, and a tool that could phone home is one you would have to take on trust.
It also cannot help you if you lose the phrase. There is no support desk that can restore it, and nobody who can freeze the account on your behalf.