Connection between mnemonic code and passphrase in BIP39 regarding security
I am trying to understand connection between mnemonic code and passphrase regarding security.
Let say I have a low entropy mnemonic code eg. "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about" in this example entropy is 0.
If I use this in any hardware wallet, I am pretty sure bitcoins will be gone immediately.
But if I add passphrase with 128bit of entropy. (let ignore how to generate passphrase with 128bit of entropy, let say for sake of argument that we have it)
Is then my hardware wallet secure with 128 bit of entropy even if entropy of mnemonic code is 0 ?
Basically I am trying to understand how is entropy of mnemonic code and entropy of passphrase affects overall security of hardware wallet ?
After writing this question I am thinking maybe connection is not liner like a sum.
That you can just add two of them together(mnemonic code and passphrase) and get total.
Thanks for answers.
Top Answer/Comment:
Entropy relates to the size of the search space an attacker using brute-force search would have to go through. When you expand that space with more possible combinations, you additively increase entropy. Combining a mnemonic phrase "abandon abandon...", which has near-zero entropy, with a passphrase with 128 bits of entropy (e.g. 12 actually random BIP-39 words) will give you approximately that 128 bits of entropy.
The mathematical reason for entropy being additive is that it's a logarithm of the search space, adding more combinations is multiplicative, and multiplying two numbers and then taking a logarithm is the same as adding the logarithms of the two numbers (assuming the logarithm base is the same). For example, a random 32-bit number can have 232 different values so its entropy is log2(232) = 32 bits, and having two random independent 32-bit numbers increases the number of combinations to 232⋅232 = 264 and entropy to log2(232⋅232) = log2(264) = 64 bits. Notice also how adding a source of randomness with zero entropy is just multiplying the search space by 20 = 1, which keeps total entropy the same (and importantly doesn't decrease it)
상단 광고의 [X] 버튼을 누르면 내용이 보입니다