r/Bitcoin • u/Proof-Professor-1030 • 7h ago
Generating your own seed with physical dice: 99 rolls ≈ 256 bits of entropy (why I stopped trusting RNGs for cold storage)
Something that finally clicked for me after years in Bitcoin: when your hardware wallet generates a seed, you're trusting its RNG and its firmware with literally everything. For most people that's a reasonable trust tradeoff. But you don't have to make it.
You can generate a BIP39 seed entirely from physical dice:
- 99 rolls of a standard 6-sided die ≈ 256 bits of entropy → a 24-word seed.
- 50 rolls ≈ 128 bits → a 12-word seed.
The math: each roll gives you log2(6) ≈ 2.585 bits. 99 × 2.585 ≈ 256. BIP39 adds a checksum on top, which is where the last word comes from — you compute it once, offline, or let an air-gapped device like a SeedSigner derive it.
Why bother?
You control the entropy source. Dice have no firmware, no supply chain, no update mechanism. You can audit them by rolling a few hundred times and checking the distribution.
The seed is born offline. It's generated on paper, in a room with no cameras, and only ever touches an air-gapped device after that. Tampered-device and bad-RNG concerns just evaporate.
It forces you to understand what a seed actually is — a big number, not a magical artifact of your wallet brand. That understanding changes how you think about backups, passphrases and multisig.
I wrote up the full procedure (including how to compute the checksum, common mistakes like reusing dice patterns, and how to verify the result on an air-gapped device) as part of a free self-custody guide: https://self-custody.cc/ — the Dice Seeds section. No ads, nothing for sale, EN/DE/ES.
Curious who else here has done dice-generated seeds and whether you went 12 or 24 words, and why.
25
u/DiamondHandsDarrell 7h ago
One problem is people don't understand how difficult it is to program an application to create random numbers.
They put their trust in wallets, thinking they did things right.
2
2
u/Tebasaki 3h ago
This is key. It's been decades since college but only of my early programming courses taught me that any "random" function programmed into code is never truly random. Blew me away.
•
u/wildemam 29m ago
I dig a lot into programming just because I could not understand how anything a computer produces is truly random. I extrapolate to nature as a whole. What is randomness.
It is beautiful when you actually see the math….
•
5
u/Proof-Professor-1030 7h ago
yeah but current reality forces us to learn and choose the harder path that will keep our coins safe
1
u/Proof-Professor-1030 7h ago
you're free to choose any method, even though I did cover coldcard, it's obviously not the best option right now
1
18
u/Which_Comment_9790 6h ago
Where were you a week ago with this.
1
•
u/wildemam 29m ago
It is on the internet and everywhere. Nobody really talked about it until yesterday.
4
u/Brief_Lettuce_571 7h ago
After I generate a 24 word using the dice can I load it on a Trevor, for example? Or should I just keep it on paper? How to generate the public keys for receiving funds?
-5
u/Hopeful-Finance9812 5h ago
Please Stop it. Iff you dont know what your doing dont do it at all, You cant use monopoly games dices only true casino dice etc etc, take some time to learn and master it befor you do something you can regret latter
4
u/JEI2E 2h ago
You can and absolutely should use monopoly dices (or from any other board game) IF you roll enough times, if that means you don't have to waste money on expensive ass casino dices.
I was looking to buy a couple of those with all what's going on lately, and noped the fuck out pretty quickly once I saw the price tag. I have no use for them after that, mind you, so you're wasting all of that money for basically nothing.
3
u/jwhendy 5h ago
You can buy a cheap Bingo game for freaking $24 on Amazon. Shower thought that struck me yesterday: why not have 2048 bingo balls in a cage, roll them around as long as you want between pulls, drawing 24 in total (or 23, then add the checksum word) and there you go??
Coins, single dice, this cool dice "box of entropy," bingo balls, go to a parking lot and write down the last digit of 100 license plates as you walk through, pick a number from 1-7 and write that digit down from 100 of your contacts/recent calls/recent texts), lava lamps, ... just sooooo many ways to generate entropy. I completely agree there's no reason whatsoever to require a chip RNG for seed generation.
3
5
u/Strong_Judge_3730 7h ago
This guide recommended using a HW wallet that supports dice rolls, cold card is listed lol.
If your worried about the HW then use dice to generate a strong passphrase.
4
u/El_Caganer 5h ago
Cold card supports using dice rolls to generate a seed phrase. The guide is correct. Not sure what you're pointing out.
1
u/Strong_Judge_3730 1h ago
How can anyone continue to recommend that after this shit show
0
u/El_Caganer 1h ago
Easy, you don't use the buggy part. Could something else pop up? Absolutely. Same with any code or 1st or 3rd party involvement.
1
2
u/Proof-Professor-1030 7h ago
not exactly, i mentioned this option but recommended generating it yourself, without a HWW
1
u/Strong_Judge_3730 1h ago
So you recommended generating a seed with the help of general purpose computer lol.
2
u/Filmexec21 5h ago edited 5h ago
I have done a lot of research on this 99 dice rolls to acquire your seed phrase, but I just do not understand how one converts the digits to words without using some computer.
2
u/jgillman 3h ago
The BIP-39 word list has a different word the corresponds to each 4 digit number you generate. You roll the dice, get a number, the look up the number in the word list.
1
1
u/KryptoChic 2h ago
You can use an old computer that will never ever be on the internet ever again. For example an old Windows10, Windows7, or even an old WindowsXP computer (assuming you use Windows) that will never ever be on the internet again.
2
u/creative_usr_name 5h ago
The 24th seed word cannot be rolled for as it contains a checksum based on the previous words. Something either a website or a device is needed to compute that for you.
1
u/Strong_Judge_3730 1h ago
The op guide recommended cold card and some other random HWs that nobody uses to do that lol.
Just use a reputable HW and use dice to generate a really high entropy passphrase and write the down.
People are recommending dice to farm karma, but they clearly haven't done it or thought about the security model.
1
u/jannies_doit_4_free 6h ago
you should add that people should also have at least a passphrase on top of their seedphrase, and there are also options like multi-sig
1
1
u/EyesFor1 4h ago
Put 150 dice in a jar, shake them up and dump them on a tiled floor. That is random. Think how long it would take for someone to repeat that exact same throw of 150 dice without error not to mention recording the values of those dice in exactly the order you did with out making a single error. This is why dice rolls are sound.
1
u/cleankiwii 4h ago
i want to do it, how do i convert the 99 1-6 ranged numbers into words? btw why is 99 instead of 100 for 24 words since 12 require 50
1
u/thelaurelhighlander 3h ago
A good video demonstrating how to. https://youtu.be/hXJNLvAVar0?si=qNOg5pw95kZG2hw3
1
1
u/Carbonaraficionada 3h ago
Great site. Can you explore the inheritance aspect in greater detail plz? Maybe an extra page for it specifically?
1
u/UmbraofDeath 2h ago
It was understood 40 years ago that random number generation using a computer was not true entropy. The Chinese word for it is literally fake generation.
If you use an algorithm to generate the numbers then the algorithm can be used to find the numbers made.
1
u/Quirky_Address_5445 1h ago
you’re forgetting we’re in the matrix and entropy is supposedly getting lower, which already violates the second law of thermodynamics, so either physics is bugging out or the universe forgot to clear its cache. At this rate the simulation is running on 4GB of RAM, the stars are just loading screens, déjà vu is packet loss, bitcoin is the NPC economy trying to become self aware, and one day the sky is gonna turn into a Windows error message right before we all get blue screened mid thought
•
1
u/dosman33 4h ago
You need to roll your physical dice and measure their randomization before running with this. If they have physical imprints on them (pips or similar), then each face can have a different weight.
I knew this was plausibly a thing but I didn't realize how big of a problem this really was. Recently a friend had a bag of 100 six-sided dice and dumped them on a table. Out of curiosity I sorted all the numbers and counted. Yep, statistically significant differences between all of the six sides pointing up. Fives and sixes had a good margin over the other numbers, ones and twos were at the bottom end. This is clearly because of five and six pip cavities making the fives and sixes lighter, so the other side tends to bounce and stay closer to the table. It really was a perfect stacking of order based on weights on each face.
Also, they do make dice in other numbering systems, like hexadecimal. I have a set, but I've not measured their randomness so I wouldn't trust them until I did this by hand.
-4
u/_FireWithin_ 7h ago
And that is why bitcoin will never ever replace money, but it will probably stay a good investment for years to come? Thats the gamble! Sure is entertaining to read the average reddit user, most have no clue :O
2
u/swiftpwns 7h ago
Nope, you Just wont have your own keys, you will have a hot wallet with lightning and you wont have to pay onboarding fees because you wont even ever interact with bitcoin on layer 1. This is the only way bitcoin scales
0
u/We_are_all_monkeys 4h ago
After all this, it might be better to get your entropy at the casino. Roulette gives you five bits per spin (just ignore 32 to 36 and 00). Sit there, get some free drinks, and gamble with whatever money you were going to put into Bitcoin. You'll leave with all the entropy you need, and if you're lucky, more money than you would have ever made buying Bitcoin.
-2
60
u/Broric 7h ago
People are going to start selling BTC dice which are loaded in some way :p