Post
Topic
Board Bitcoin Technical Support
Merits 6 from 2 users
Re: How do I identify the valid checksums for bip39 if I generate 11/12 of the word?
by
hosseinimr93
on 26/09/2022, 12:08:03 UTC
⭐ Merited by o_e_l_e_o (4) ,pooya87 (2)
There are (on average) 128 words which will be a valid checksum for a 12 word seed phrase. It is 8 words (on average) for 24 word seed phrases.
Thanks for the correction.
But isn't that 128 words for the 12 word seed phrase and 8 words for the 24 word seed phrase?

Let's say I have the first 11 words of a 12 word seed phrase and the last word is unknown.
There are 256 possibilities for the first 8 bits of the last word and 16 possibilities for its last 4 bits.

There's 1/256 chance that the first 8 bits of the last word I choose are 00000000.
There's 1/256 chance that the first 8 bits of the last word I choose are 00000001.
There's 1/256 chance that the first 8 bits of the last word I choose are 00000010.
.......
.......
.......


If the first 8 bits are 00000000, there are 16 possibilities for the last 4 bits that make the seed phrase valid.
If the first 8 bits are 00000001, there are 16 possibilities for the last 4 bits that make the seed phrase valid.
If the first 8 bits are 00000010, there are 16 possibilities for the last 4 bits that make the seed phrase valid.
......
......
......


The chance of having a valid BIP39 seed phrase in which the first 8 bits of the last word are 00000000 is 1/256 * 1/16.
The chance of having a valid BIP39 seed phrase in which the first 8 bits of the last word are 00000001 is 1/256 * 1/16.
The chance of having a valid BIP39 seed phrase in which the first 8 bits of the last word are 00000010 is 1/256 * 1/16.
......
......
......

Therefore the chance of having a valid BIP39 seed phrase is (1/256 * 1/8) * 256.
That's always 1/16. (128 out of 2048 words)