- What is BIP39?
- Why is BIP39 important?
- Why is it called "BIP39?"
- What Is a BIP39 mnemonic sentence / seed phrase?
- What is a BIP38 passphrase for BIP39 Seed phrase?
- How likely is your BIP39 seed phrase to be guessed?
- Why are BIP39 words chosen from a limited dictionary?
- Do you need to understand BIP39 mathematics?
- What are BIP32 and BIP44?
What are BIP39, BIP38, BIP32, and BIP44?
This article explains BIP39, the standard that defines how seed phrases are made, and summarizes how BIP32 and BIP44 standards allow wallets to supercharge seed phrases to support many more keys.
BIP39 is a common and useful standard in crypto wallets.
BIP39 defines how wallets create seed phrases and generate encryption keys.
It is critically important that the numbers selected to create the BIP39 seed phrase be random!
A BIP39 seed phrase created with appropriate randomness can not be guessed through brute force, because there are simply too many permutations.
In addition to BIP39, there is a BIP38 passphrase option, that adds a moderate amount of additive protection in case your BIP39 seed phrase is stolen or otherwise accidentally exposed. However, it also adds some risk, so it is recommended for more experienced users.
BIP32 and BIP44 are related standards that have paved the way for other wallet features, making it more convenient for users to manage their crypto assets.
What is BIP39?
BIP39 is a design implementation that lays out how cryptocurrency wallets create the set of words (or "mnemonic codes") that make up a mnemonic sentence, and how the wallet turns them into a binary "seed" that is used to create encryption keys, which are then are used to execute cryptocurrency transactions.
In setting guidelines for how wallets do this, BIP39 simplifies cryptocurrency for us. (Can you imagine how complicated it would be if every wallet had its own way of doing things?)
It isn't necessary to know all the details of BIP39 in order to use cryptocurrency - but you would certainly benefit from knowing a little about it.
Why is BIP39 important?
BIP39 is a great icebreaker at cocktail parties! Well ... maybe not, but if you want to purchase some cryptocurrency, and have decided to set up your own cryptocurrency wallet, it becomes relevant if your choice of wallet supports BIP39. If you use a wallet that implements BIP39, and let's say in the future you decide to migrate your keys to a different wallet, you can re-create your crypto holdings in your new wallet by feeding it your original BIP39 mnemonic sentence. This works because BIP39 is supported by so many wallet manufacturers. As a result, not only does BIP39 simplify wallet and key management, it also opens the door to much simpler wallet migration. Although it is a "Bitcoin Improvement Proposal," in practice, BIP39 is a de facto standard that has greatly evolved the cryptocurrency industry.
Why is it called "BIP39?"
BIP39 is just one of a set of multiple technical design documents introduced by the cryptocurrency community since Bitcoin's inception. Its name comes from the fact that it was the 39th Bitcoin Improvement Proposal (BIP). It actually has a longer formal title: "Mnemonic code for generating deterministic keys" -- a bit of a mouthful -- so you can think of "BIP39" as its nickname. BIP39 has turned out to be one of the most widely-used BIPs, and it's now implemented by many wallet manufacturers, and used for many more cryptocurrencies than just Bitcoin.
What Is a BIP39 mnemonic sentence / seed phrase?
A BIP39 mnemonic sentence is a set of words (most commonly 12 or 24) that we can interact with more successfully than other characters that aren't words (bits and numbers and the like). BIP39's purpose in introducing the use of mnemonic words is to reduce the errors that often occur when we try to communicate long strings of unfamiliar characters. The wallet handles the heavy lifting of converting the mnemonic words through a process of complex hashing, salting, and checksum operations into a binary "seed," which is then used to generate the all-important private and public encryption keys.
It's very important that the mnemonic sentences are generated from randomly selected numbers! These numbers can be generated in a variety of different ways, which are described in other articles here, like "What is an RNG" and Seed Phrase Generation.
What is a BIP38 passphrase for BIP39 Seed phrase?
There is an option for users to add a password for a seed phrase. It is defined by the BIP38 standard.
Take note to avoid confusions:
- BIP39 is a Seed phrase is a set of 12 or 24 words from the dictionary, it is a main secret,
- while BIP38 is an option, that could be used, or not, as an additional totally random secret.
By default, some cryptocurrency wallets disable the use of the optional passphrase. Although it can add some security, it also adds complexity. If you set a passphrase, your backup strategy has just gotten more complicated: you now have two important pieces of information (your mnemonic sentence and your passphrase) which are critical to store securely. This additional complexity increases the risk of misplacing the passphrase, and thus losing your cryptocurrency.
How much security does a passphrase add? Because the BIP39 seed phrase itself offers an incredibly high level of protection against being guessed, the addition of a passphrase actually doesn't significantly reduce the risk of a brute-force guessing attack. Instead, the primary purpose of a passphrase is to add an extra layer of security to protect against the possibility that your seed phrase may be accidentally revealed to someone.
However, being shorter and less random than the seed phrase itself, the passphrase likely could be guessed eventually with a brute-force attack. If someone did gain access to your seed phrase, the level of protection that a passphrase offers is short-lived. You might have a chance of saving your cryptocurrency from theft only if you noticed that someone had gained access to your seed phrase before they were able to brute-force guess your passphrase. In practice, this could be days or weeks, depending on how hard to guess it was. But is that limited increase in security worth the increased risk of loss of the passphrase? Based on your individual situation, you can decide that for yourself, but you can see why many experts recommend against setting a passphrase.
How likely is your BIP39 seed phrase to be guessed?
A mnemonic sentence constructed from random inputs is much more unique than most people can possibly imagine. For example, in a 24-word BIP39 sentence, there are 2048 to the 24th power possible combinations of words (or stated another way, around 3 x 10 to the 79th power). To try to comprehend how enormous this number is, it's often compared to an estimate of the total number of atoms in the known universe. In practice, it is effectively unguessable with today's technology.
Why are BIP39 words chosen from a limited dictionary?
BIP39 wordlists may seem arbitrary, but they are not - they are carefully chosen to reduce the chance of mis-specification. Words in a BIP39 wordlist are selected with the parameters in such a way that they don't have synonyms, don't have alternative spellings, don't have only 1 character variation with other words in the list, and aren't profane. These rules apply for every language. In addition, the first four characters of each word are unique to each wordlist, which is convenient when typing them into hardware wallets with limited input mechanisms, stamping them onto steel cards, or backing them up in any other form.
BIP39 wordlists can be seen here: https://github.com/bitcoin/bips/blob/master/bip-0039/bip-0039-wordlists.md).
Also, you don't necessarily have to remember this, but BIP39 wordlists have 2048 words in them. The reason for this is because it aligns with how BIP39 uses 32-bit blocks of entropy (random inputs) plus a checksum bit sequenced into a long binary string that is divisible into 11-bit numbers. Each of those numbers can hold up to 2048 bits. In short, 2048 words are all that are needed to achieve extremely high levels of entropy.
Do you need to understand BIP39 mathematics?
As a user of a cryptocurrency wallet, you don't necessarily need to understand the precise details of BIP39 calculations. However, you might want to understand that they include the generation of a checksum of random numbers, and this is used as an integrity check. A checksum is a small piece of data that allows you to check if another piece of data is the same as expected. This checksum is included in the last mnemonic code word of a sequence, and it helps wallets to verify the validity of every mnemonic sentence. So if a user types in a set of words and it fails validation because the checksum isn't as expected, there is likely a typo in what the user entered.
BIP39's other mathematical functions transform its inputs (the random numbers plus the optional BIP38 passphrase) through one-way functions that guarantee that they can not be reverse-engineered from the public key.
If you'd like to do a deep dive, and understand the exact mechanisms of how BIP39 wallets convert mnemonic codes into a binary seed, there is a description in the design document at https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki.
Vault12 also has a more detailed description in "How to Generate a Seed Phrase."
What are BIP32 and BIP44?
As described in this article, the BIP39 standard describes how a seed phrase is constructed.
Related to BIP39, the most prominent wallet standards include BIP32 and BIP44:
BIP32 ("Hierarchical deterministic wallets") lays out a framework for Hierarchical Deterministic wallets (HD Wallets) for Bitcoin so that the wallet software can control multiple separate Bitcoin accounts using a single seed phrase.
Furthermore, BIP44 ("Multi-account hierarchy for deterministic wallets") defines the same organizational hierarchy for managing multiple accounts in deterministic wallets for all other than Bitcoin cryptocurrencies, like Ethereum, Dogecoin, etc.
BIP32 and BIP44 work together to add flexibility, privacy, and interoperability to HD Wallets. HD Wallets extend the capabilities of deterministic wallets, allowing for the management of a huge number of keys, all of which are derived from the original BIP39 mnemonic sentence (seed phrase).
For the purposes of the guides on our website, we will focus on how to manage the BIP39 seed phrases, since it is supported by every modern crypto wallet, and it is the core thing to understand and be able to properly backup almost any crypto assets. However, you may come across wallets like Coinomi which also use BIP44 and default to 24-word seed phrases.
Feel free to learn more about all of the BIP cryptocurrency standards that may be relevant to you!
Next Up From Vault 12
Inheritance and self-custody for CryptocurrencyVault12 Explainer
Vault12 Product Demo
Vault12 Digital Inheritance is the first solution to offer a simple, direct, and secure way to ensure cryptocurrency, NFTs and other Web3 digital assets can be inherited by future generations.
Digital Inheritance enables investors to designate an individual or a mobile device as a guardian that will inherit their entire portfolio of digital assets inside a secure digital Vault once the time comes, eliminating undue risk and the need to continually update an inventory or issue updated instructions which result in privacy leakage.
Designed to be used alongside traditional hardware, software, and online wallets, Vault12 helps cryptocurrency owners, professional crypto traders, and high-net-worth investors safeguard their digital assets without storing anything in the cloud or in fact, any one single location. This increases protection and decreases the risks of loss.
The Vault12 app enables decentralized self-custody, back up, and provide legacy inheritance for all your web3 digital assets, including NFTs, wallet seed phrases, secrets like keys, PIN codes, DAO project keys, and digital art.
Whether your digital art is suitable for a phone, or represents much higher resolution multimedia, make sure that you have backed up a copy in case the resource link is disrupted in the future. Digital art can easily be added to the Vault either via the mobile app or via the desktop utility. Once you have stored your artwork in your Vault, it will also benefit from inheritance once you activate that in your app.
As a creator you can use Vault12 to safeguard not just your NFT and crypto wallets, but also original digital artwork. Project creators will always have to deal with multiple wallets - inventory, treasury as well as future royalty wallets.
Vault12 safeguards your project assets, increasing protection and decreasing the risks of loss, whilst ensuring that everything is ready to go to be passed onto future generations, when the need arises.