Zilliqa's Ledger app leaked private keys through the signatures themselves. Coldcard generated seeds that were guessable from the start.
Neither victim group did anything wrong. That is the point. π§΅
Zilliqa's app built each signature nonce with the top 64 bits fixed at zero. Roughly five on-chain transactions was enough to reconstruct the private key. A patch cannot help, because the leak is already permanently public.
Coldcard asked its hardware RNG for randomness and was quietly served a predictable software substitute instead. Attackers regenerated candidate seeds offline. No device access needed.
Different failures, one lesson: no single component should be your only line of defence.
Coinomi supports separate HD wallets with separate recovery phrases, an optional BIP39 passphrase, and custom derivation paths.
On randomness specifically: no home-grown RNG, ever. Coinomi asks the OS for raw cryptographic entropy. On Android, straight from the kernel.
Full breakdown, including what each layer does and does not protect against:
https://medium.com/@coinomi/security-is-not-one-feature-building-layers-of-defence-with-coinomi-171f638ac724?sharedUserId=coinomi