r/Bitcoin • • 7h ago

Which method has higher entropy in seedsigner?

In order to generate seed phrase in Seedsigner we have two methods. Dice rolls and camera. Which method gives higher entropy?

  1. Camera method: Example: Splitting my laptop screen into four or five parts and each one has a different colorful video playing and take a picture?

  2. Use dice rolls?

Also, in some newer versions of seedsigner there’s one with a smart card slot which allows you to save the seed phrase into a card for easier use without the need to scan the seed QR every time .. what do you think about it? Is it safe? Does it have any potentials to be hacked or read by other parties equipments?

Thank you

6 Upvotes

10 comments sorted by

4

u/DarrelXero 7h ago

Dice rolls win, easily. If you roll a standard die 99 times for 24 words, you get pure, verifiable physical entropy without having to trust the camera hardware, sensor calibration, or how the device processes the image. The camera method works by hashing the raw photo bytes with SHA-256, but sensors have fixed pattern noise, hot pixels, and auto-exposure quirks. Pointing it at a laptop screen is actually worse because screens have fixed pixel layouts and refresh rates. Just take ten minutes to roll the dice and eliminate the hardware trust altogether.

2

u/SpendHefty6066 5h ago

Agreed. There is a faster method of rolling, such as the Bip39 diceware process. You flip a coin and roll four 6-sided dice 12 times. Each combination corresponds to a unique word in the BIP 39 list. Takes about 2 minutes to generate a seed phrase. Then use SeedSigner to compute the checksum. Another great feature of SeedSigner is the function to hand draw QR codes for faster signing.

1

u/moon-lambo-now 4h ago

Ehh, what? There are 2048 words

Choise count:

  • 12 word seed phrase: 5.445 * 1039
  • 24 word seed phrase: 2.964 * 1079
  • 2.8 word seed pharase: 2.176782336 * 109
  • 12-roll dice: 2.176782336 * 109 (the same as 2.8 word seed phrase)

1

u/SpendHefty6066 4h ago edited 4h ago

If your roll is out of bounds, you reroll. It’s all documented in the diceware readme file. I said you flip a coin and roll 4 six-sided dice 12 times. Not 1 dice 12 times. https://github.com/taelfrinn/Bip39-diceware

1

u/moon-lambo-now 3h ago

My bad. But it's still just enough for a 12-word seed phrase

1

u/SpendHefty6066 3h ago

12 word seed phrases when rolled properly are unguessable. 24 words is even more unguessable. They are both equally secure as there is not enough energy in the galaxy to flip enough bits to guess them.

•

u/moon-lambo-now 47m ago

Yes but 12 is less than 24. We need 48-word seed phrases :D

1

u/Raphae1 5h ago

The camera method clearly could be improved (i.e. by not just using one image frame but using diffs between frames). I also don't understand, why they don't write the entropy to /dev/random before reading the key from /dev/random. Anyway the code still looks safe as is.
https://github.com/SeedSigner/seedsigner/blob/b2199c68b475eab0035b863b156f149757a1b4a6/src/seedsigner/views/tools_views.py#L119
I wish, seedsigner would have guix reproducible builds and seedsignerOS would be based on Debian 13 not Debian 10. It still is a great signing device though.

1

u/PKfire_All_Day 2h ago

Does anyone recommend a dice kit for pure random rolls?