2
After reading BIP44, I saw
Purpose is a constant set to 44' (or 0x8000002C) following the BIP43 recommendation.
I believe 0x8000002C is 128 as an integer, how does this equate to 44' however?
I also believe that the ' means that it is a "hardened key", is it hardened because 128 is between 0 and 2^32 - 1 ? Which means that the only key that can derive it, is the private key?
To further elaborate my thinking, which may or may not be right:
These are the levels:
m / purpose' / coin_type' / account' / change / address_index
purpose, coin_type and account, all have to be derived with the private key. They will always be between 0 and 2^32 -1
I have also come to believe that if we have derive a change address with the xpub, then if we derive the same path with xpriv, we can spend from that change address?
For example, if I receive some funds to the change address with path:
m / 44' / 0' / 0' / 0 / 0
Then to spend from this specific address, I would need the private key that corresponds to it. To get it, I would use the xpriv on this path?
Not a full answer, but you should read BIP32. It explains what hardened derivation is, and what is possible with and without it. – Pieter Wuille – 2018-04-25T22:12:20.383
@pieter-wuille Alright, I will re-read it again. I was hoping to get some clarification as I am reading an implementation of it and it does not seem to be following the guide. Edit: you are the author haha, the bearded one. Thanks for BIP32, will give it another gander! – Kyle Graham – 2018-04-25T22:28:58.733
Also, change addresses would have the path
m/44'/0'/0'/1/n. – Raghav Sood – 2018-04-25T23:47:50.283@raghav-sood thanks for the correction. Helps a lot to see where I misunderstood or made reckless mistakes! – Kyle Graham – 2018-04-26T04:57:13.657