Essential cookies only โ€” Cookie Policy.

Cryptocurrency Security

BIP39 Diceware: How to Roll Dice for a Crypto Seed Phrase

๐Ÿ“… 20 Aug 2026ยทโฑ 9 minยทโœ Ateeq Y Tanoli

Most crypto holders trust an algorithm to generate their seed phrase. But if you need to prove โ€” to yourself โ€” that your wallet's entropy came from a source no software could have predicted or tampered with, physical dice are the only method that provides that guarantee. Hardware wallet manufacturer Coldcard recommends rolling a minimum of 99 dice before generating a 24-word wallet; Trezor's firmware includes a dice entropy mode by default.

BIP39 diceware is the method of using physical dice to generate entropy that maps to the BIP39 wordlist, producing a verifiably random seed phrase for a cryptocurrency wallet without needing to trust any random number generator.

Definition: BIP39 Diceware
BIP39 diceware is the practice of rolling physical dice to generate raw entropy, which is then processed via SHA-256 and mapped to the Bitcoin Improvement Proposal 39 (BIP39) wordlist โ€” 2,048 curated English words โ€” to create a mnemonic seed phrase for a cryptocurrency wallet. Each word encodes exactly 11 bits of entropy (2ยนยน = 2,048). A 12-word seed phrase holds 128 bits of effective entropy; a 24-word phrase holds 256 bits. The final word in any BIP39 phrase is partially constrained by a SHA-256 checksum and cannot be freely chosen.

BIP39 Diceware vs Classic Diceware

The BIP39 and EFF Diceware systems are structurally different despite both using wordlists and randomness. Classic Diceware maps directly from dice rolls to words: five dice produce a five-digit number (11111โ€“66666), which corresponds to a single word in a 7,776-word list. BIP39 cannot work the same way because 2,048 is not a power of six, so dice rolls cannot be converted to BIP39 word indices without rounding bias.

FeatureClassic Diceware (EFF)BIP39 Diceware
PurposeMemorable passphraseCrypto wallet seed phrase
Wordlist size7,776 words2,048 words
Bits per word~12.9 bits11.0 bits
Dice method5 dice โ†’ word index directlyDice rolls โ†’ SHA-256 โ†’ entropy bits
Last wordFreely chosen from listConstrained by SHA-256 checksum
Hardware supportNoneColdcard, Trezor, Foundation Passport
Used forLogin passwords, encryption keysBitcoin, Ethereum, all BIP44 wallets

The core difference in the generation method: with BIP39 diceware, the raw dice rolls are fed into SHA-256, which produces a deterministic but unpredictable bit string. That bit string is then split into 11-bit groups, and each group selects a word from the BIP39 wordlist. Hardware wallets handle all of this internally โ€” you enter the dice rolls, the device does the hashing and word mapping.

The BIP39 Wordlist: 2,048 Words and 11 Bits Each

The BIP39 wordlist was specified in 2013 by the Trezor development team as part of Bitcoin Improvement Proposal 39. The 2,048-word count was chosen because 2ยนยน = 2,048, giving each word exactly 11 binary digits โ€” a clean mapping from binary entropy with no wasted probability space.

The English wordlist was further curated with specific requirements:

Official BIP39 wordlists exist in nine languages: English, Chinese Simplified, Chinese Traditional, Spanish, French, Italian, Japanese, Korean, Czech, and Portuguese. All use the same 2,048-word structure.

Compare with EFF Diceware: The EFF large wordlist contains 7,776 words (~12.9 bits each), chosen for memorability and clarity of pronunciation. BIP39 prioritises unambiguous abbreviation and binary alignment over memory-friendliness โ€” a 12-word BIP39 phrase is not intended to be memorised, but written down as a backup.

Entropy Math: 12-Word vs 24-Word Phrases

BIP39 phrases come in three lengths. The relationship between phrase length and entropy is straightforward:

Phrase lengthEntropy bitsChecksum bitsTotal bitsMin dice rolls (d6)
12 words128 bits4 bits132 bits50 rolls
18 words192 bits6 bits198 bits75 rolls
24 words256 bits8 bits264 bits99 rolls

Each d6 roll contributes logโ‚‚(6) โ‰ˆ 2.585 bits of entropy. So 50 rolls yield approximately 129.2 bits โ€” just enough for a 12-word phrase. The 99-roll recommendation for 24-word phrases produces approximately 256 bits, which matches the required entropy exactly.

The checksum bits are not user-generated โ€” they are derived by SHA-256 hashing the entropy and taking the first N bits of the hash as the check value. This means the final word in any BIP39 phrase is partially determined by the preceding words. You cannot roll for it independently.

Step-by-Step: Rolling Dice for a BIP39 Seed Phrase

The most reliable method uses a hardware wallet with a verified dice entropy mode. This example follows the Coldcard Mk4 procedure, which is open-source and independently auditable.

What You Need

The Procedure

  1. Boot the Coldcard and navigate to New Wallet โ†’ Dice Rolls.
  2. Roll the die once and enter the result (1โ€“6) on the device. Repeat 98 more times for a total of 99 rolls.
  3. The Coldcard computes SHA-256 of your complete dice sequence, then XORs the result with entropy from its hardware True Random Number Generator (TRNG). This combined entropy is passed to the BIP39 derivation algorithm.
  4. The device displays the 24-word mnemonic on its air-gapped screen. Write every word on the backup card โ€” never type them into any connected device.
  5. The Coldcard displays the final word last and shows whether the checksum validates. Confirm it does before proceeding.
  6. Store the written backup in a physically secure location โ€” a home safe or fireproof document bag. Consider splitting the phrase across two locations using a Shamir Backup scheme if security requirements demand it.
Air-gap discipline: The Coldcard never connects to the internet. Your dice rolls are processed entirely on the device. Do not enter your seed phrase into any wallet software on a connected machine until you are certain you understand address derivation and have verified a test transaction first.

Without a Hardware Wallet (Advanced Only)

It is technically possible to generate a BIP39 seed phrase from dice rolls using Ian Coleman's open-source BIP39 mnemonic generator, run offline in a browser on an air-gapped machine. Download the tool, verify its SHA-256 hash against the published release signature, then run it with no network connection. Enter your dice-derived hex entropy manually in the "Entropy" field.

This method requires trusting the software environment and verifying the tool's integrity. It is only appropriate for users who can audit JavaScript and verify build reproducibility. For everyone else, a hardware wallet with a dice mode is the correct approach.

Hardware Wallets With Built-In Dice Modes

DeviceDice modeRecommended rolls (24-word)Firmware
Coldcard Mk4Yes (native)99Open-source (MIT)
Trezor Model TYes100Open-source (GPL3)
Foundation PassportYes50+Open-source (GPL3)
Ledger Nano XNoN/AClosed-source
BitBox02No (uses TRNG only)N/AOpen-source

Coldcard combines user dice rolls with its TRNG via XOR before SHA-256 hashing. This means even if your dice were somehow predictable, the hardware TRNG still contributes independent entropy โ€” and vice versa. The NCSC's guidance on key generation notes that "combining multiple independent entropy sources is always preferable to relying on a single source, however trusted."

A Coldcard Mk4 retails for approximately ยฃ130โ€“ยฃ150 in the UK and can be purchased directly from the manufacturer or through authorised UK distributors. Look for hardware security keys and physical security accessories at Amazon UK.

Common Mistakes When Using BIP39 Diceware

Frequently Asked Questions

What is BIP39 diceware?

BIP39 diceware is the practice of using physical dice rolls to generate raw entropy that is processed via SHA-256 and mapped to the 2,048-word BIP39 wordlist, creating a verifiable mnemonic seed phrase for a cryptocurrency wallet. Hardware wallets including Coldcard and Trezor include built-in dice modes that handle the SHA-256 derivation internally.

What is the BIP39 wordlist size?

The BIP39 English wordlist contains exactly 2,048 words. This was chosen because 2ยนยน = 2,048, so each word encodes exactly 11 bits of entropy with no wasted probability space. Official BIP39 wordlists exist in nine languages โ€” each maintains the 2,048-word count and the first-four-letters uniqueness constraint.

How many dice rolls do I need?

Each standard six-sided die roll contributes logโ‚‚(6) โ‰ˆ 2.585 bits. You need a minimum of 50 rolls for a 12-word phrase (128 bits) and 99 rolls for a 24-word phrase (256 bits). Coldcard specifies 99 rolls as the standard; Trezor specifies 100.

Can I choose the last word of my BIP39 seed phrase?

No. The final word encodes a checksum derived from SHA-256(entropy). For a 12-word phrase, the last word carries 7 bits of user entropy and a 4-bit checksum. For a 24-word phrase, it carries 3 bits of user entropy and an 8-bit checksum. Hardware wallets calculate and display the correct final word automatically.

Is dice rolling more secure than the hardware wallet's built-in RNG?

Not necessarily more secure โ€” but more verifiable. Certified hardware RNGs (FIPS 140-2 standard) are statistically equivalent to physical dice for practical purposes. The value of dice rolling is that the entropy source is observable and auditable: you can count every roll and confirm the procedure was followed correctly, independent of any software state or firmware version.

bip39 diceware bip39 wordlist size seed phrase diceware cryptocurrency entropy Coldcard Trezor
For informational purposes only. Cryptocurrency security practices evolve rapidly โ€” always verify procedures against current hardware wallet firmware documentation before generating a wallet holding significant value.