1

I am aware that the introduction of BIP-38 resulted in a standard for passphrase-based encrypted private keys utilizing AES. What is not clear to me is whether these can be generated from HD wallets? Are the HD wallet seed-based private keys, then, considered encrypted private keys? Or do they follow the general private key format, since they are derived through their own HD wallets' processes?

1

The private keys themselves can be generated with BIP 32 and then those private keys encrypted. Private keys generated with BIP 32 are not special private keys; they are just normal private keys and you can do exactly the same things to those private keys as you would to any other private key.

  • Right, but do most modern HD wallets support this? It seems as though BIP-32 combined with BIP-39 (the optional passphrase that can be used when creating your HD wallet seed) is seen as an alternative. Would it be possible to BIP-38 encrypt the seed-generated master and child private keys? I cannot seem to figure out how to do this on top of HD-seeded private keys. – Leeren Oct 19 '17 at 17:43
  • No, nearly all HD wallets do not use BIP 38 encryption. They still store the seed and all of your private keys in an encrypted format local to that wallet only. That encryption scheme is only used in the wallet software's wallet files and not to be read by others. BIP 39 is used because it creates more memorable strings. The seed phrase is generally supposed to be unencrypted to protect against the most common coin loss reason: forgetting the passphrase. – Andrew Chow Oct 19 '17 at 18:05
  • I see! So are all private keys generated from HD wallets not intended to be shared with other people? What if I wanted to share a child-derived private key to another party? With BIP-38 paper wallets these could be mailed and the passphrase shared through email or something. How is this functionality supported in HD wallets then? – Leeren Oct 19 '17 at 18:22
  • Private keys are never intended to be shared with other people. You should never share a private key with someone. You can share a child private key in exactly the same way you share any other private key. As I said in my answer, there is nothing special about BIP 32 derived private keys. You can use BIP 38 encryption with a child private key. Note that if you did not use hardened derivation and the party you shared the child private key with also learns of your master public key, then your master private key can be derived and ALL of your child private keys derived thus resulting in coin loss – Andrew Chow Oct 19 '17 at 18:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.