What the seed phrase gives you is a 32-byte (12 words) or 64-byte (24 words) private key.
The seed words are the most important thing to have, as you cannot "brute-force" guessing your seed words.
However, there are a few configuration options that take place between your seed words, and addresses that you generate.
**1.) What is the standard for deriving the key? **
This determines the word lists and how to convert the words into a master key. BIP39 is the standard that most folks use. Electrum has a different standard, and there may be others, but it's not hard to try different formats.
**2.) What is the "derivation path" for creating child keys?
This determines how child keys are created from the master key. There is a small list of standard paths to use, so it's something you can also try and guess. It does help to write this down though, along with the "master fingerprint" which helps you check that you key is being imported correctly.
3.) What is the address format for my key on-chain?
There are various address formats which encode your "child key" and give it extra protections, such as error detection / correction (for when you fat finger the wrong key).
There's a small number of formats, and most wallets use bech32. But you can try other formats.
tl;dr as long as you have your seed words, there are a small number of different format options that you can try to figure out the correct settings. But it's easier to just write this stuff down, or at least remember which wallet was used to generate your keys.
Thanks for this. So would it be correct to say that (assuming it's not multi-sig, there's no passphrase), as long as you have the script type correct, and the derivation path, then you should be good?
I guess many wallets don't show that.
If you have the script policy descriptor (that's the term in Sparrow, in any case) I assume there's nothing else you could need?
reply
Yes
reply