CypherHive

Find out what the ₿uzz is all about

bitcoin

Bitcoin (BTC)

$ 66,117.71 7.19%

How to Roll Your Own BIP39 Seed Phrase

This guide will show you how to roll your own BIP39 seed phrase completely offline and give you all the tools you need. The best part of this is that seed that you generate is as unique as you are which creates an intimate connection between you and your seed phrase. This is because the entropy(randomness) is created by you instead of a hardware/software wallet.

Why create your seed this way?

Even if a hardware wallet or software wallet is open source, that doesn’t necessarily mean that the code you can see is the code you are running unless you compile and install it yourself from that code. There could be malicious code, vulnerabilities, bugs, or inferior entropy generation that could compromise the seed generated on it. Don’t trust, verify. Generating your own seed phrase also very fun and rewarding and you will learn the process that goes into creating a BIP39 seed phrase.

What you will need

We created a kit with everything you need called Sovereign Seed Roll. It comes with three 16-sided binary dice (saves you conversion time from regular dice rolls to binary), laminated worksheets, a dry erase marker, and a magnetic case to keep everything organized. Get yours here.

If you don’t want to buy a kit, don’t worry. We will show you how to do it with your own tools of randomness. Word of caution though: some dice may be “biased” and may not produce as much randomness as you would expect. Our Sovereign Seed Roll dice are 100% solid to ensure maximum randomness.

Tools of Randomness

This can be coins or dice with 6 ,8 ,16 or 32 sides. Other variations of dice can be used but you may need to reroll if you roll certain numbers. The more sides your tools have the less work you will have to do. For example; a 12 word seed phrase will require at least 121 coin flips but only 31 rolls on a 16 sided dice.

This is a sheet we color coded to  make it easy to enter your binary numbers and find your words on the seed word list

This seed word list is color coded to help you easily convert your binary numbers to seed words

With your tools of randomness in hand and the printed worksheets provided above you will have everything you need to generate all of your seed words except for the last word, which is called the checksum. We’ll show you how to get the checksum later.

Let's begin

Make sure to do this process when you are not around anyone else.
Make sure you are out of sight of any cameras including cell phones and computers.
Don’t say the words you found out loud.
Never take a picture of your seed words.

Figure out how many words you want in your seed phrase. 12 words are recommended as they are considered very secure, take the least time to enter in a wallet, and are the easiest to memorize if you ever choose to. See our adjacent video for more information on seed words. 12 words have less entropy than 15, 18, 21, and 24 word seed phrases respectively. The more words you use can increase the chances of making a mistake. Make the best choice given compatibility with your wallet and the tradeoffs. 12 words and 24 words are standard. Other choices may have issues importing to your wallet.

Coin Flip

BitcoinGoldCoin

Assign 0 and 1 to each side of the coin. It does not matter which you do but be consistent. (i.e. Heads = 0 and Tails = 1). Try and flip your coin in random ways each time (different amounts of force, bounces, etc..) You can use a cup and shake it vigorously before releasing it for extra randomness. Record the 0 or 1 in the colored Binary slot in the Seed Generation Worksheet (i.e. if it landed on Heads put a 0). Do this 11 times. 

Dice Roll

One-Dice

Roll your dice. Try to roll in random ways each time (different amounts of force, bounces, etc.) You can use a cup and shake it vigorously before releasing it for extra randomness. You now have to convert the number on the dice to binary with this conversion table. Record the binary numbers in the colored Binary slots in the Seed Generation Worksheet. Do this until you at least fill the first 2 red boxes. 

Finding your first word

  1. You now have enough information to get your first word. Look at the first number you put in the orange block. That number determines what page to use on the word list. Use the page where the large “First Bit” number is same as the number you put in the orange box.

  2. Look at the next 3 numbers in green on your Seed Generation worksheet and on the Seed Word List find the block of rows in green that matches. Next, look at the next 3 numbers in yellow and you will have the row of your first word.

  3. Look at the next 2 numbers in blue to find the correct group of columns. Finally look at the next 2 numbers in red to find the exact column of your word. Use your found column and row to pinpoint the word and write it on the worksheet in the space provided under your binary numbers.

Great job! Now repeat the process until you get to the appropriate checksum.

The Checksum word

The last word of the seed phrase is called the checksum. The checksum is created by hashing the entropy and ensures there are no errors. There are only certain words that will be valid checksum. Calculating the checksum by hand is much too difficult. But there are a few easy methods to obtain this final word.

This process should be done offline and ideally on a device that is never connected to the internet. This can also be done on certain air gapped hardware wallets like SeedSigner and SpecterDIY. If you have access to these tools, you should use them. If not, don’t worry. You can calculate the checksum word on a computer using one of the Free and Open Source Tools below.

Again, make sure you keep your seed generation worksheet out of view of cameras or any other devices. Don’t say the words out loud.

(Optional) Offline Hardware Devices capable of generating checksum

Free and Open Source Software to generate the checksum word

If you don’t have access to a seedsigner or SpecterDIY then you can simply pick 1 of the free tools below to generate your checksum word.

My favorite computer method is with Sparrow Wallet for a few reasons. It is the fastest way to get the result, you can use it completely offline (which you 100% should do for this purpose) and you don’t have to type the whole seed phrase into the computer. You can type the first letter or two and scroll to pick your words (this protects you in case you unknowingly have keyboard logging malware on your computer).

(Recommended)
  1. Download Sparrow Wallet
  2. Ideally you want to download it to a USB thumb drive and then take it to an offline computer and install Sparrow there. If you only have 1 computer, just make sure you take extra precautions described below.
  3. If your computer is connected to the internet, disconnect it. Turn off wifi and unplug any ethernet cord.
  4. Install and open Sparrow wallet.
  5. Click “File” then “New Wallet”. Click “New or Imported Software Wallet”
  6. Click “Use 24 words” or the down arrow next to it to choose the number of words you want in your seed phrase.
  7. Put in your seed words (If using a computer that will go back online, only type the first couple of letters and scroll and click on the appropriate words).
  8. When you get to the last word a list will pop up showing you all the valid checksum words. If you already calculated a word with the dice, choose the checksum word closest to that one. Erase your old word and put write your new one.
  9. If you didn’t put a word in the checksum box, feel free to pick a random one and write it down.
  10. Now that you got what you wanted, you can close the wallet or if you want more information about the wallet you can click “Create Keystore” then “Import Keystore” then “Apply”. You can encrypt this wallet with a password. Now you can get your Xpub, view the addresses, see your master fingerprint, ect. You can delete this wallet at any time by clicking “File” then “Delete Wallet.”
  • iancoleman.io will let you pick a higher entropy checksum word than seedpicker.net with more detailed information about your new seed phrase.
  1. Open the webpage and right click somewhere on whitespace on the webpage and click “Save as…”
  2. Ideally you want to save it to a USB thumb drive and then take it to an offline computer and open it there.
  3. If you only have 1 computer disconnect your internet connection and turn off Wifi.
  4. Open the file you saved.
  5. Type in your words and a checksum word you randomly pick or make with the dice. It will likely say “Invalid Mnemonic”. That’s ok, just click the checkbox “Show Entropy Details”
  6. Now you will be shown your full seed phrase with a valid checksum. Don’t forget to write it down.
  7. Tip: You can use the iancoleman.io/bip39/ page to check and verify your work. The binary numbers you put on the seed generation worksheet should be the same as the binary numbers on the website (with the exception of the checksum word).
  8. If using a computer that will be reconnected to the internet: Close the browser and restart your computer before reconnecting to the internet.
  • seedpicker.net will only work for 24 word seed phrases.
  1. Open the webpage and right click somewhere on whitespace on the webpage and click “Save as…”
  2. Ideally you want to save it to a USB thumb drive and then take it to an offline computer and open it there.
  3. If you only have 1 computer disconnect your internet connection and turn off Wifi.
  4. Open the file you saved.
  5. Type in your 23 words and click Calculate!
  6. Now you will be shown your full seed phrase with a valid checksum. Don’t forget to write it down.
  7. If using a computer that will be reconnected to the internet: Close the browser and restart your computer before reconnecting to the internet.

Congratulations! You have just generated a valid seed phrase as unique as you are.

Give yourself a pat on the back!

Finally make your seed permanent, ideally by stamping it in metal, or writing it on a piece of paper. Put it in a safe and secret place.

Need Support?

Contact us if you need further assistance