Why would you trust some random hardware, that has the sole purpose of holding your money, making it an obvious target, over a general purpose computer you control entirely?
Why would you trust some random hardware, that has the sole purpose of holding your money, making it an obvious target, over a general purpose computer you control entirely?
The hardware wallet is just a sandboxed interface between you, your seed, and the blockchain. It requires a computer to connect to you and the internet.
In other words: as long as you have your seed phrase (and your passphrase, if you set one) on a piece of paper, you can smash your hardware wallet to bits and be fine.
(This assumes a standard single-signature wallet using the BIP-39 standard)
Thus the attack surface is far greater.
But now you need to generate a public key to send to someone so you can receive coins. How are you sending that key to your friend? Are you going to read character by character and manually type up the string?
It's all tradeoffs.
Sounds kinda clunky.
For example, in MacOS it would be extremely hard to "sniff the display" as in this attack, unless you take obvious steps to authorize screen access.
To continue with your example, "display sniffing" could be done by infecting trusted software or software presented as trustworthy (fake or infected Zoom binaries, Xcode binaries, etc.) or injected through open source dependencies like npm packages.
Yes, you or I might be paranoid enough to check the checksum hash to make sure the open source code matches the build. But every time, for everything?
The less connected it is, the safer. The less software it runs, the safer.
There are so many hoops to go through to pull something like that off, it's basically impossible. It would be a "the great train robbery" kind of effort. I also don't think an npm package could alter an existing app or obtain screen access otherwise, unless you're running `sudo npm install` routinely.
Some form of phishing would be way more likely to succeed, luckily you can use your own brain to protect against those attacks.
Fake zoom updates: https://www.malwarebytes.com/blog/scams/2026/02/fake-zoom-me...
NPM supply chain attack targeting cryptowallets: https://www.paloaltonetworks.com/blog/cloud-security/npm-sup...
More software means more complexity means more pathways to losing.
Can you do it? Sure. I'm sure there are millions of dollars in private keys stored on internet connected laptops somewhere out there. But the best practices remain the same: as little internet as possible, as little software as possible.
Most people's computes run a lot of software, including a general-purpose OS with a huge attack surface and third-party applications, often with broad or even unconstrained access to all their files.
General purpose computers often also don't have tamper-proof secure storage; hardware wallets generally do.
To use it boot, run your wallet software, enter the decryption key for your wallet, conduct your transaction (communicating with whatever other device you are using for this the same way a hardware wallet would communicate), and turn off the wallet computer when done.
You build it the same way people build any other read-only bootable Linux.
Configure your kernel to not include drivers for any peripherals not needed for the task of being a wallet.
If you have some peripheral whose firmware does something like snoop RAM on its own to try to find and steal your crypto keys, and it has some way to exfiltrate that data then maybe you are screwed.
But if you do this right nothing you are using is particularly associated with cryptocurrencies or cryptocurrency users, and ideally you bought all this some anonymous way (like went to Best Buy and bought an RPi with cash, along with any peripherals you need).
Note that once built you should never need to update either the hardware or the software, so unless it is already compromised when built it should stay safe.
I never did get one, though.