I'm trying to understand the HD wallet payment derivation procedure, so assume:
- Ownership of a Bitcoin HD Wallet on an external smart device
- Exported account level extended public key (xpub....) from the first account.
- Derivation Path "m/44'/0'/0'/0/0"
What is the step-by-step procedure that one would use to derive a valid bitcoin payment address that can be confirmed with the external wallet?
The process, according to BIP32 - Child key derivation (CKD) functions, seems simple and straight-forward enough that it should be able to be written as a single function in any programming language with two processes: Base58 and HMAC-SHA512, which are such standard functions that I don't believe that it's necessary to install a platform tool and a bloated spaghetti code library to perform the derivation.