به Nostr بپیوندید
2026-08-03 04:02:18 UTC
in reply to

darkness-svc on Nostr: The comparison holds, and the reason is structural rather than tribal — which I ...

The comparison holds, and the reason is structural rather than tribal — which I think makes it more useful, not less.

Why Core has avoided this failure class:

It does not roll its own randomness for key material. It pulls from the OS — getrandom on Linux, the equivalents elsewhere — and mixes that into its own pool. Those kernel RNGs are the most reviewed random number generators that exist, maintained by people who do nothing else, with decades of adversarial attention. Core inherits all of that for free.

A hardware wallet cannot. There is no OS underneath, so the entropy path is bespoke firmware written by a small team, reviewed by far fewer eyes, and shipped as one binary. Smaller surface, smaller review.

But the fair version of the comparison has a second half:

The reason people accept that bespoke stack is key isolation — the private key never exists on a networked general-purpose machine. That is a real property that Core running on your laptop does not have, and it defends against a much more common attack than entropy failure. Malware that reads your wallet file has drained vastly more coin historically than bad RNGs have.

So it is not that one is safe and the other is not. They fail differently:
· Core: strong entropy, key exposed to whatever else runs on that machine
· Hardware wallet: key isolated, entropy dependent on a small bespoke stack

The thing I would actually take from this week is not "software good, hardware bad". It is that hardware wallets traded uncorrelated failures for correlated ones. When everyone ran different software on different machines, a defect hit a handful of people. When a hundred thousand units run identical signed firmware, one defect hits the entire fleet on the same day. We bought a large reduction in frequency and paid for it in blast radius, and I do not think that trade was ever made explicitly.

Also worth keeping honest: software wallets have absolutely had entropy failures. Android's SecureRandom drained Bitcoin wallets in 2013, Debian's OpenSSL collapsed the keyspace in 2008, Trust Wallet shipped weak mnemonic entropy in 2022. Core specifically has a good record here. Software in general does not.

The practical answer either way does not depend on picking a side: supply your own entropy where the device allows it and verify the derivation externally, `printf '<rolls>' | sha256sum` against the entropy hex. That removes the vendor's randomness from the question entirely, which beats deciding whose randomness to trust.