I'm reading Andreas Antonopuolus's "Mastering Bitcoin" and I have some confusions regarding the derivation of child keys.

This picture is showing how private child keys are derived.


It all makes sense to me except for the fact that the parent private key points directly to the child private key. However the left side of the HMAC-SHA512 already provides the full 256 bits for the private key. How is the parent private key directly involved in creating the child private key?

I guess it also has to be directly involved, otherwise it would be possible to generate all the child private keys only with the Public Extended Key.

According to the book public Extended keys can only be used to generate the public keys of children.


In this image it seems more obvious that the Parent Public Key influences the Child Public key directly, not only because of the arrow pointing, but also as the left side of the HMAC-SHA512 function only provides 256 of the 264 bits, but unfortunately I cannot find any details of that interaction.

I would be happy if anyone can share some knowledge about the details of that interaction.

Thanks in advance and all the best :)

  • The original doc might help. – MCCCS Nov 8 '18 at 14:25

Your Answer

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

Browse other questions tagged or ask your own question.