On the other hand, my question was about what if you expose multiple Master Public Keys, related to different blockchains, and someone knows that all of these Master Pubic Keys relate to the same seed, is it possible to guess the seed phrase? I know you can't possibly guess the seed phrase with just one Master Public key, but what about if you had many?
Forget the seed phrase, all they need is your "
master private key" which is derived from the "
seed", and seed derived from the seed phrase.
From 'seed phrase->seed->master private key', there're already two irreversible hash functions to overcome.
Having all extended public keys from Bitcoin/Altcoin derivation paths isn't going to help since you essentially only have the public keys.
The extended public key is just a public key followed by a chain code, it's the pair of the private key part (
1st 32bytes) of the extended private key with the same chain code.
As you know it, you cannot derive a private key from a public key.
Additionally, since it's brought up that it's possible if at least one child private key is exposed,
If you somehow exposed one example_coin extended public key and one example_coin child private key, then a hacker got his hands on your example_coin extended private key (
xprv),
he still wont be able to derive the master private key from it since it passed through multiple child extended key derivations with different indexes per coin and derivation paths.
Given that someone has access to your extended private key at
m/xx'/x'/x'/0For the "
hardened" child extended key (
the numbers with ' ), it's impossible to get the parent.
For the normal child extended key (
without ' ), to get the parent extended privKey, he needs the parent's extended pubKey but it's usually isn't available to the user.
Basically each of your extended key has gone through:
master private key/purpose'/coin'/account'/internal or external e.g.:
m/44'/0'/0'/0Each / corresponds to a child extended key derivation which is irreversible.