Starting with "Chasing Shadows": The 2048 words that determine trillions of encryption assets.

Written by: Tyler

Recently, I watched Jackie Chan's critically acclaimed new work "Caught in the Wind and Chasing Shadows," which features an interesting segment — over 100 billion HKD of cryptocurrency assets locked in a 12-word mnemonic wallet, with only the last word remaining unknown.

I tried it after watching and found that the 10th and 12th words are not in the standard mnemonic word list. Clearly, the scriptwriter wrote it this way on purpose to prevent someone from restoring the wallet based on the plot to commit fraud, as similar scams on the blockchain are not uncommon.

Scammers will intentionally leak a "wallet address with balance" (typically on the Tron chain, utilizing the Owner mechanism), luring everyone to transfer Gas, waiting for prey. Once the funds are transferred, they can never be retrieved.

But the interesting point here is that the movie says there is just one word left unknown. However, in the real world, the mnemonic phrases follow the BIP39 standard, which consists of a total of 2048 words. This means that brute-forcing the last word would yield at most 2048 possibilities. If we further narrow down the range, for example, if the starting letter known from the movie is 'es', then the possibilities decrease even more, and it could be tried in just a minute.

However, the question worth revisiting beyond the movie is: what is the relationship between mnemonic phrases, private keys, and public keys? Why does losing the mnemonic phrase mean losing all assets?

  1. Mnemonic: Private Key: Public Key/Address = "Keyring": "Key": "House Number"

A mnemonic phrase is a backup method that follows the BIP39 standard, consisting of 12, 18, or 24 words randomly selected and combined from a vocabulary of 2048 English words using an algorithm.

This set of mnemonic phrases, after being processed by the PBKDF2 algorithm, will generate a seed, which will then derive a series of private keys according to path standards such as BIP32/BIP44, corresponding to a series of public keys/addresses.

A set of mnemonic words → Generate a series of private keys → Generate a series of public keys → Corresponding to a series of addresses

In other words:

Mnemonic phrase = key string, and it often has a one-to-many relationship with the private key. Theoretically, a set of mnemonic phrases can derive thousands of private keys.

Private key = key, each private key corresponds to the usage rights of an address;

Public key/address = house number, can be public, others can use it to transfer money to you;

So you can think of the mnemonic phrase as your "keychain," with each private key resembling a key that can open a door, used to sign and prove your control over a certain wallet address—when you initiate a transaction, you sign it with the private key, informing the entire network: "I authorize this transfer."

  1. Can I choose my own mnemonic phrase?

So some friends might think: Can I come up with 12 words myself? For example, my birthday, my favorite English word, my idol's name, that would be more personal.

The answer is: Yes, but extremely dangerous.

Because computer-generated random numbers are truly random, while humans tend to choose words in a patterned way (common words, habitual words, order preferences), this greatly reduces the search space, making your mnemonic phrases easier to guess.

There has been a security incident involving "pseudo-random wallets" in the past, where some wallets used pseudo-random algorithms to generate mnemonic phrases, resulting in insufficient entropy. Hackers were able to brute-force and directly exhaustively crack them. In 2015, the hacker group Blockchain Bandit systematically searched for weak security private keys by exploiting faulty random number generators and program code vulnerabilities, successfully uncovering over 700,000 vulnerable wallet addresses and stealing more than 50,000 ETH from them.

Of course, some geeks will use dice (making sure the dice are also sufficiently uniform) to roll random numbers and then map them to the BIP39 word list, which is considered manually secure. However, for most people, it's unnecessary to complicate things like this, as it can lead to mistakes.

Can we violently crash into V God or other whales' wallets?

I also imagined this problem back in the day, fantasizing that one day I would generate a wallet address, and upon checking, it would have over a million ETH inside, instantly achieving financial freedom and directly stealing from a certain whale.

I have to say, just thinking about it is quite tempting. But the reality is: the probability is almost zero.

Why? Because the possible combinations of mnemonic phrases have reached a staggering number that exceeds human imagination:

12 words: The number of valid combinations is approximately 2¹²⁸ ≈ 3.4 × 10³⁸

24 words: the number of valid combinations is approximately 2²⁵⁶ ≈ 1.16 × 10⁷⁷

What is the concept of this order of magnitude?

We all know that there are countless grains of sand on Earth, but scientists have estimated an approximate value. Assuming that all the beaches and deserts combined, the total number of grains of sand on Earth is about 7.5×10¹⁸ grains, which also means:

The number of valid combinations of 12 words is equivalent to 4.5 × 10¹⁹ times the total number of sand grains on Earth.

The number of valid combinations of 24 words is 1.5 × 10⁵⁸ times the total number of sands on Earth.

In other words, it's as if every grain of sand on Earth has turned into a "new Earth," each new Earth having its own beaches and sand, and then you need to randomly find that one grain you marked in advance among all these grains of sand at once.

This has far exceeded the scale that humans can imagine.

Therefore, the probability of brute-forcing a wallet is not "extremely low," but under known physical and computational capabilities, it is equivalent to zero. Relying on "credential stuffing" to get rich is even worse than buying a lottery ticket, as the chances of winning are much higher.

Back to the movie's setting: if there really is someone who is just one mnemonic word short, it is indeed possible to attempt it through brute force.

Finally, here are a few security tips regarding wallets/mnemonic phrases/private keys:

Prefer to use non-custodial wallets that have been tested by time and the market, and have undergone open-source code audits, such as MetaMask, Trust Wallet, SafePal, etc., and conditionally use hardware wallets directly;

Mnemonic phrases and private keys should never be screenshotted, stored in cloud drives, copied and pasted, or shared with others;

It is best to write down on paper (consider using a stainless steel mnemonic board, which is moisture-proof, fire-proof, and corrosion-resistant), keep it in a safe place, and have multiple backups in 2-3 different locations.

The public key/address can be safely shared; it is your house number, but be careful to identify phishing links.

It is recommended to manage wallets using clean devices and avoid installing unknown plugins or apps casually.

Remember one thing: if anyone asks you for your mnemonic phrase, they are 100% a scammer.

ETH1.14%
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • Comment
  • Repost
  • Share
Comment
0/400
No comments
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate App
Community
English
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)