It’s possible to cross a border to a different country, carrying 100 Billion dollars with you. With some words memorized in your head - true Sovereingty
Overview
🧠What is a brain wallet
⚠️Why managing more words can be risky
⚠️Brute Force attacks
⚠️Private Key attacks
📈Rationale between choosing 12 or 24 words for backing up your wallet
Not your keys not your Bitcoin. This is a truth that you must adhere to. If you hold your Bitcoin on an exchange, or in a brokerage account, get it off as fast as humanly possible. Criminals, government, everyone is going to try to steal it from you!
🧠What is a Brain Wallet
Once you have your Bitcoin, you will have a private key to control it. You can keep this on paper, software, hardware AND in your brain. It’s possible to cross a border to a different country, carrying 100 Billion dollars with you.
No one knows.
Ultimate Sovereignty.
To do this you must remember between 12 to 24 words.
The simplest and most effective way of doing this is to use a story method or narrative technique. Just create some silly “visual” story linking the words. The more silly it is the easier it is to remember.
How this works is part of the Bitcoin improvement protocol or BIP.
🧮BIP 32 & BIP 39
A private key that can be used to get at your Bitcoin abilities is a 256 bit (1 or a 0) sequence like so:
110110101001110001010011011110101101010001110100010101010100110110110100100101010100110010010011101010001010110110010110101011101010101001011110101110010101110110101010110100101010100110100101010110010110101010110101010101101011010101010100101010110100100101010100110010100101010100100110101010110101010101100
Not that easy to remember? You are correct! The Bitcoin developers came up with BIP 32 and BIP 39 which is a list of 2048 words. Words like “arrow”, “zero”.
BIP 32 and BIP 39 give us a series of words that get called a Seed phrase or seed words. The seed can construct a private key that will give you control over your Bitcoin.
🦹♂️The Cost of Security
With increased security comes increased complexity. There is a continuum where you get to choose where to move the slider. You can go max security to the right hand side and have more complexity or move to the left and have less security and less complexity.
With all of my life experience my observation is as follows:
Security is only layers of obscurity
Everything is reverse engineerable, everything can be undone.
You need to make the opportunity cost more expensive than the amount of resources the attacker is willing to spend.
For a brain wallet, you need to remember words. If you forget some - you loose your Bitcoin. There are real ramifications with more complexity (more words to remember).
❓12 or 24 words
Ok so how many words should our seed be for our Seed phrase?
Obviously memorizing 12 words would be easier than 24, but does that mean it is half as secure or doubly easy to steal?
🦾Brute Force
Well lets start our investigation by going to this URI. This is a great exploratory tool for randomly generating seeds using BIP 39.
If you click on number of words and set it to 24 then generate.
Upon scrolling down you will see Derived addresses or public addresses that come from the seed phrase.
If you copy paste the address into a blockchain explorer tool like the one pictured below you can see whether it has any funds in it.
If you do see any bitcoin in the address - Congratulations! It is now yours!
To claim your prize note down the 24 words, buy a hardware wallet and restore the wallet from these words. Now move the funds to another address of your choosing.
There are two things I want you to reflect upon at this point.
First, if you keep generating seed phrases, you get to keep looking for Bitcoin.
I visualize it like this - imagine you are in the film The Matrix. You are in Neo’s training simulation. Everything is bright white but there are storage lockers from a swimming pool in front of you. Every locker is unlocked. Each one will contain 0 to many Bitcoins. The lockers go to the left and right as far as your eyes can see. They go up and down as far as your eyes can see. You can open as many or as little as you want.
This a way of visualizing the security that exists for bitcoin.
Every locker is open but there are so many the chances of you finding a locker with Bitcoin inside is close to zero.
This approach is called a brute force approach.
You might say well this sounds insecure.
The math behind it is that there are 2048 words in the BIP 39 proposal. The words like “arrow”, “zero”. And you need to choose 24 of these words in the correct order out of 2048 options.
2048^24 = 2.96 x 10^79
Or
~29642774844752946028434172162224104410437116074403984394101141506025761187823616
To put it into context it is estimated there are roughly ~10^50 atoms on earth and ~10^80 atoms in the observable universe. Keeping in mind the difference between 10^79 and 10^80 is exactly one order of magnitude (10 times the size).
Or said another way - for finding a swimming pool locker with Bitcoin in it, it has roughly the same odds of playing eye-spy with me picking an atom in a rock somewhere in the observable universe. A strawberry for size reference might have around 2,000,000,000,000,000,000,000,000 atoms. And you picking the same atom.
So not very likely.
From an attacker’s point of view, it doesn’t make much sense with a trial and error approach.
⚔️Attacking your Private Keys
This Excellent reference article makes a point that it would be foolhardy to just wander off into the universe, looking under every atomic rock to see if you find (I was going to say gold but Bitcoin is superior).
Given that Bitcoin is blockchain based and with that a public immutable ledger, it would be more sane to look at the list of known addresses that have a transaction pointing to them. As you can see how many coins are in this Matrix Swimming Locker.
In the Brute force approach we had keys to every locker. In this scenario, the locker is padlocked but we’d need to force it open.
If we have 12 words which are easier to remember, if the attacker was to Brute force this “locker”, it would be
2^128 attempts or
340,282,366,920,938,463,463,374,607,431,768,211,456 tries
Alternatively they can employ Pollard’s rho algorithm to attack but that is the same effort of 2^128.
⛓️Weakest Link
Security is as strong as its weakest link and looking at the numbers I posted above (complexity of operations) you can choose the smallest number as the weakest link.
I took this segment from the article referenced above as it’s conclusion is excellent and concise.
If you were to use a 24 word seed phrase, even though it would provide additional entropy when generating private keys, the underlying private key would still be broken in 2^128 operations — exactly the same as a 12 word seed. This means that longer seed phrases will not add additional security to the underlying private keys themselves, and only increase the difficulty of brute-forcing a given seed phrase (something that is already statistically impossible for a 12 word seed phrase).
📈Lost in the crowd
Given that it would make more sense to attack a Bitcoin address directly, what are the odds of someone attacking your address?
Looking at this chart there are ~1 million addresses that contain >1 Bitcoin.
So 1/1000000 = 0.000001% chance of someone picking you, then going to town on trying to break your Swim locker.
Which in theory should take longer than the universe to do.
So…How many words for a Brain wallet?
This post from Adam Back sums it up.
Who is Adam Back? A Cypherpunk and;
It is clear that for a brain wallet 12 words is the clear choice; breaking any Bitcoin address is the same effort as using 12 words for a seed phrase, therefore you might as well use the shorter pass phrase and reduce the chance of forgetting your words.
Cool article.