In this down the rabbit hole, I'm going to answer a question you asked as a follow-up to a previous
rabbit hole where we talked about why it's impossible for someone to guess your private key
by relating it to very large numbers of cosmological scale. And now the
the follow-up question we got was, "okay, so if a bitcoin private key is such a big number
that every atom in the observable universe could have its own bitcoin private key, and you could
never guess it because that's the same as guessing which atom in the entire observable universe is
my atom out of all of those out there, how does this relate to mnemonic phrases? Is it more
or less difficult to guess a mnemonic phrase? What is the scale of a mnemonic phrase? Is a
mnemonic phrase is just as difficult to guess?" A lot of people have a lot of
confusion when it comes to mnemonic phrases or seed phrases. What is a mnemonic phrase? What's
up with that? All right let's explain what a mnemonic phrase is. You've probably heard me say
that a private key in bitcoin just like a bitcoin address, or a bitcoin signature is just a number.
Everything we're talking about here is just numbers. There's nothing
magical. So a bitcoin private key is just a number, a bitcoin address is just a number.
We write them in different ways and you may have heard of this concept of a mnemonic phrase you've
probably used it if you have your own self-custody or non-custodial wallet. A mnemonic phrase is a
collection of between 12 and 24 English words which is used to back up your own wallet.
When you first run a wallet, maybe a mobile wallet on your mobile device, that is non-custodial or a
hardware wallet that generates keys for you -- the first thing it's going to ask you to do is back up
this phrase. And it's going to show you 24 let's say 24 English words. This is based on a standard
called BIP39, the bitcoin improvement proposal 39, which sets the standard for mnemonic phrases as
they are known. A lot of people call them a "seed phrase" or simply "seed," not exactly correct
terminology but we'll run with it. So the seed phrase is called the seed phrase because
if you have those 24 words you can recover your wallet: all of its transactions, all of its keys,
across multiple cryptocurrencies even if you've been using that wallet for years and you've done
thousands of transactions, generated thousands of addresses, across hundreds or even thousands
of different cryptocurrencies. All of that can be recovered from these 24 words. How is that
possible? And how is it different from a private key? And how difficult is it to guess those
24 words? So, that mnemonic phrase, those 24 words which can be expressed in a variety of languages
but let's stick to English for now, come from a dictionary. And this dictionary has 2048 words
in it. It's a fairly small dictionary. It was designed by Satoshi Labs, the company
that first proposed this standard, and it was a development of an idea previously created by
the authors of the Electrum wallet. But here's the really key idea that you have to understand.
A mnemonic phrase made of 24 English words is a number. It's just a number, it's a number that's
written in English words, but it's still just a number. So, how do you make a number out of words?
Well, I mentioned that this dictionary has 2048 words. The first word, if I remember correctly, is
about. The last word is zebra. And in between there are 2046 other words alphabetically:
about, above, aardvark, etc all the way down to zebra. Now if you think of this dictionary,
you could line up all of the words from "about" through "zebra" and then put a number next to
them. And if you put a number next to them, about would be one, above would be two, etc,
all the way down and 2048 would be zebra or zebra would be 2048. So you can see how
if you have a dictionary with 2048 words in it, then you could basically assign
a number between 1 and 2048 indexing these words. And therefore you can see how each
one of these words can be a number. Now think of the 24 words in a row as a series of 24 numbers
numbers between 1 and 2048 and you begin to see how this is simply a numeric encoding system.
So when you write out a number in decimal, you use digits 0 through 9, and the position of the digit
is important. And if you put lots of these digits together you come up with some pretty big numbers.
A bitcoin private key, for example, is a 77 digit long decimal number. And that can be encoded as 10
to the 77. It corresponds to the number 10 to the power of 77 because it's a combination of
0 through 9 repeated 77 times. So you can choose the first digit, 0 through 9, that gives you 10
possible combinations. Then the second digit will be 10 more possible combinations, so 10, times 10,
times 10, times 10, times 10, times 10, and for 77 digits you multiply 10 with itself 77 times
and you end up with 10 to the power of 77. Now let's do that with the words of a mnemonic phrase!
The first word which is between [the words] about and zebra, is a number between 1 and 2048
so you can choose 2048 possible options for the first word in your 24 word sequence.
The second word also gives you another 2048 choices to pick from again: about through zebra.
And so if you took a two-word mnemonic phrase, how many combinations does that have? Well it
has 2048 combinations for the first word, times 2048 possible combinations for the second word.
So 2048 times 2048 or 2048 squared. If you had a three-word mnemonic phrase, then it would be
2048 times 2048 times 2048. You're beginning to see a pattern here. So a 24-word mnemonic phrase
is effectively 2048 to the power of 24. That's how many possible arrangements of a 24-word
phrase exist. 2048 choices for word one, 2048 choices for word two, 2048 choices for word three,
times times times times 24 times for 24 words: 2048 to the power of 24. 2048 to the power of 24
which is your mnemonic phrase, is the same number as 2 to the power of 264 which is slightly bigger
than the 256-bit key and the reason for that is because the mnemonic phrase has a checksum in it
to make sure that we don't mess it up when we're transcribing it. So effectively, the 24-word
mnemonic phrase is the same size as a private key. And if you take that as your starting position,
with a special function, a derivation function, you can actually generate a sequence of keys
from that first one in such a way that it always generates the same sequence of keys;
which allows you to restore an entire wallet with multiple cryptocurrencies and perhaps
thousands tens of thousands of transactions from that single number. A mnemonic phrase is a number.
And it's a number as big as a bitcoin private key, slightly bigger because it has a checksum.
And therefore, picking or guessing your 24 word English mnemonic phrase is equivalent to guessing
a bitcoin private key, is equivalent to picking one atom out of the observable universe.
And that's why mnemonic phrases are not only a secure mechanism and cannot be guessed but also
a convenient mechanism because it's a lot easier to read write down and read again 24 English words
than it is to try to back up a 77 digit decimal number, or 256 bit digit binary number onto a
piece of paper. And that was our rabbit hole for today. Hi! Thanks for watching the video.
I'm Andreas M. Antonopoulos, I'm the author of Mastering Bitcoin, Mastering Ethereum, and The
Internet of Money Series. If you'd like to support my mission of bringing education about bitcoin and
open blockchains to as many people as possible, under open free creative commons licenses, please
consider subscribing to my channel and supporting me on patreon.com a-a-n-t-o-n-o-p. Thank you!