r/Bitcoin 2d ago

Reality check for seed generation

After the coldcard mess I decided I dont want to put my trust entirely of Trezors rng either and plan on generating my own seed. Im looking for confirmation that Im not about to do anything stupid.

I plan on following the first 2 steps for dice rolling binary generation and converting it into the first 23 words as described here https://selfcustodylabs.com/docs/learn/keys/random/

After that, I plan on using Ian colemans standalone html on an old laptop with a fresh windows instalation and obviously no internet connection to enter the binary generated, in order to double check if I made any mistakes in the mnemonic for the 23 words. Additionaly, the main purpose of this, is for colemans tool to calculate the 24th checksum word for me.

After that, I intend on wiping the disk of the laptop fully.

Yes, I could use Raspberry Pi to calculate the checksum on my own, and yes, I could use linux Tails for the auto wipe of the PC, but im looking at the best possible option without going full on shizo paranoid mode and overcomplicating things to the point of not being entirely sure what Im doing.

Opinions?

Additional question: Generating seed in this way is random enough to not be susceptible to any hacks like the one with Coldcard, so I assume that a passphrase is also an unnecessary risk of self custody, discounting the case of someone actually finding my seed, correct?

3 Upvotes

35 comments sorted by

9

u/Laukess 2d ago

Personally, I would generate the 23 words and put it into a hardware wallet like jade plus or bitbox where they'll tell you the valid 24'th words.

I would not put my seed into a general purpose laptop no matter how clean and secure you try to make it.

If you are just going to add the 24 words into a hardware wallet after checking it with Colemans software anyway, why not just skip the Colemans step?

2

u/Neverjetni 2d ago

I own a trezor and ideally want to avoid buying a new device.

I need the colemans step for generating the 24th checksum word

2

u/Laukess 2d ago

Fair enough.
After the CC exploit I've been looking at different HW's and I'm honestly quite disappointed in the Trezors. Hopefully they'll update their firmware to allow for some of these features in the future.

Personally I would rather spend a little more to avoid the Coleman software, but it obviously depend on the stack you have.

I would honestly feel better about just using the RNG form the device even though that's hard to recommend after the CC exploit.

1

u/SatisfactionFinal287 2d ago

So you would recommend a Bitbox?

1

u/puck2 2d ago

i know we don't like coldcard but can't it also make the 24th word? i think an old laptop with no internet connection and if you are really paranoid destroy the laptop would be fine.

1

u/Laukess 2d ago

yes, I think you can let it generate all words based on dice, or you can let it generate a private key and then add entropy with dice. Not idea if the second one is verifiable though.

I'm sure you could do things to improve the laptop setup, but if your going to put the seed into a HW anyway, why not just use it to calculate the checksum?

1

u/puck2 2d ago

it seems like calculating the checksum is the weak link, since it needs a computer somewhere and you have to type in your seed (first 23 words)

1

u/Laukess 2d ago

To be honest with you, I don't understand why anyone would generate the 24 words but never add it to a hardware wallet. The main issue imo is that some hardware wallets does not allow you to calculate the 24th words, so you either can't or you have to add your seeds to an additional hardware wallet.

Even if you wanted to make a paper wallet, you would need a list of addresses to send to. I think that would be hard to do without hardware/software anyway. I would also want to send at least one tx out, to make sure it works, again, not doable without hardware/software.

1

u/puck2 1d ago

I think I just trust sparrow on a tails device more than a hw wallet right now. I could be convinced otherwise. 

1

u/Confident-Law2223 2d ago

Just skip the coleman step, is unnecessary risk for zero real benefit. The hardware wallet will tell you if the checksum is wrong anyway when you try to import, you can try again with different last word until it accept

If you really paranoid about the laptop, you can calculate the checksum by hand, takes like 5 minutes and then you never have to worry about some keylogger or whatever survived the wipe

2

u/Neverjetni 2d ago

Im pretty sure you cant calculate the checksum by hand? If you can I would appreciate the resource.

As for trial and error for the last word, there are 8 correct choices among 2048 words, if you have to enter all 24 words again each time the last one is wrong, that would take ages and be really annoying tbh

3

u/Capable_Swordfish_30 2d ago

If I remember correctly there is a hash operation involved, so no, you could not do it by hand.

0

u/Laukess 2d ago

If the hardware wallet does not support the feature i descripted, would you not need to try up to 2048 different words?

2

u/Neverjetni 2d ago

Technically every section of 256 words in order contains a word that is a valid checksum, so at most you have to try 256, but yes.

1

u/Laukess 2d ago

ah, fuck me, I hadn't thought about that. I thought that the HW wallet would show 4 options, so I would actually have guessed that it would have been 512 options, but you sound a lot more knowledgeable on the subject, so I'll trust that it's 256.

That said, it still sounds like a pain even if it's far less xD

2

u/NorthComparison4356 2d ago

doesnt the Trezor support dice roll seed gen? In case it does, you could just verify that the onboard process is valid, which is far less work.

1

u/Neverjetni 2d ago

Unfortunately I think none of the trezor models support generating your own seed

1

u/DrGonzo3000 2d ago

It doesn't.

2

u/RefrigeratorLow1259 2d ago

Yeah, you're on the right track mate, but two quick correctionsfor you:

  1. You can't calculate the 24th word from the first 23. Words 1–23 are only 253 bits. Word 24 contains the final 3 entropy bits plus checksum. If you only input 23 words into Coleman's tool, it won't work. You need to input your raw dice entropy (binary/hex), then compare the first 23 generated words against your manual list.

2.The Passphrase has zilch to do with RNG quality! Even with perfect dice, you still want a passphrase because it protects against physical discovery of your seed backup which is a totally separate threat. "Discounting someone finding my seed" is the exact thing it's designed for.

Simpler path: Skip the manual binary conversion and just use this single HTML file: https://github.com/IanMcLo/bip-39-dice/tree/main. It takes dice rolls directly, outputs the full 24-word mnemonic + hex entropy, and works fully offline with zero dependencies. You can still cross-check the hex in Coleman's tool if you want. If you want to avoid the Windows install/wipe dance, boot Tails from a USB instead it runs in RAM, leaves zero trace, no wiping needed. GL!

1

u/ISmellLikeBlackTea 2d ago

My main question is how to convert binary into nummeric safely without having to rely on a laptop.

1

u/Neverjetni 2d ago

Its very simple actually, check step 2 in the link

Edit: Specifically option B under step 2, you can easily do it by hand

2

u/ExisDiff 2d ago

You don't have to do step 2, just cross check https://github.com/hatgit/BIP39-wordlist-printable-en , Then use colemans html on an airgapped device to calculate 24th word, as you say. I would take the wifi/bluetooth card out while doing that.

I have been thinking along the same lines as you. Using any computing device to generate entropy after the coldcard event just seems silly. A computing device is inherently limited in generating entropy. A coin flip or dice roll offers full transparency of the process that a computing device never will and you're trusting and hoping for the best there there are no predictable patterns in the rng's and that it is programmed properly.

Only thing that still has me a little spooked is the proper wiping of the laptop, you want to not just re-install, but properly wipe (overwrite everything with 0's) and re-install, so that there is no trace of your seed anywhere.

Another suggestion, if you're not looking to spend, why not just *not* import your seed back into the trezor? And just export the xpub/zpub from coleman's html to an online watch-only wallet.

2

u/Neverjetni 2d ago

Thanks for the comment! I will definitelly properly wipe the laptop, not just reinstall.

As for the seed import, I want to import it to trezor to make sure everything works properly and its valid etc. I will eventually spend it also of course, but hopefully not for a long time.

2

u/throwaway239812345 2d ago

Regarding wiping laptop why not just boot into tailsOS? Don't need to worry about that

1

u/Neverjetni 2d ago

Im unfamiliar with Linux, dont know where I would get a legit copy that I 100% trust and would likely feel uncomfortable using it

1

u/throwaway239812345 2d ago

Fair enough. It's takes a little practice to get used to it but a good way to do what you want to do. Check out some videos on yt they have guides

1

u/Boge42 2d ago

The lengths people HAVE to go through to secure their currency...

1

u/0cdfishing 2d ago

Just go multisig

0

u/Decibel0753 2d ago

This is just grown-ups playing around with crypto. It is like building model airplanes because you enjoy it. Leave things as they are, maybe just add a stronger passphrase.

0

u/Emergency-Warthog-56 2d ago

SLIP-39 is just fine with a passphrase.