What is a hardware wallet?
August 10, 2019
You might already know what Bitcoin and cryptocurrency wallets are and the differences between the different wallets types. Hardware wallets as opposed as software wallets are devices created to keep your coins safe. At the end of this article you will know what they are and if you really need one for keeping your Bitcoins!
What problem do hardware wallets solve?
Wallets are key-rings handling your public and private keys. If you install a software wallet on your computer or mobile phone, the keys are stored on the memory of your device (it can be the internal memory of your phone or the hard drive disk of your computer for example).
Multiple software are accessing the storage of your device. Let’s take the example of a simple PDF document: it can be opened by a PDF reader software or it can be uploaded to the cloud with a software like Dropbox or Google Drive. The last application is done in the background so most of the time, you barely notice when the filed is synced up to the cloud.
With the usage of the internet, malwares can end up running on your system as background tasks without even noticing! Some will display ads or use your computer for deny of service attacks, but some other will just sit here silently and browse your files looking for something in particular… Like for example cryptocurrencies wallets!
If your keys are compromised you might lose all your coins and there is no way to get them back!
Hardware wallets are devices that generates and hold your keys in a way that they can’t leave the device by design (even if the device is plugged to a computer)
By keeping your keys on a specific hardware (running a specific and limited firmware), the hardware wallet should prevent this kind of attack on your digital assets.
How does a hardware wallet work?
Your keys can’t leave the hardware wallet. So that’s up to the device itself to create transactions.
Transactions are the only thing that can get out of the hardware wallet!
Initializing a hardware wallet
First thing to know before ordering a hardware wallet is that you should never buy it second-hand. Someone could have tempered with it so that it makes you think your seed is totally random but in fact, the previous owner already knows it. It would shatter any security that a hardware offers. Don’t be tempted by cheaper ones. They should be bought on the official website of the manufacturer and never be opened!
When you receive your wallet the first thing to do is generate a seed of 12 or 24 words (the more words, the better) that will be your backup in case your it gets stolen or destroyed!
Most hardware wallet manufacturers will provide a small sheet of paper to handwrite these words. You should put this piece of paper in a different (but trusted nonetheless) place than your wallet. If your house burns down, the wallet and the backup would get destroyed and so would any hope of ever seeing your coins again!
Here is how a typical transaction goes when you send money to someone using a hardware wallet.
First, you connect your hardware wallet to your computer or phone using the application provided by your wallet’s manufacturer. The application will usually display things like the list of cryptocurrencies held by your wallet (most hardware wallets can hold multiple cryptocurrencies!), a balance and buttons to receive or send money.
Then, you click on send and enter the recipient address.
When clicking on “send”, your hardware wallet will display on its screen the address where the amount will be sent. This step is very important. You should always check that the addresses shown by your computer or phone and your hardware wallet are the exact same. You hardware wallet is secure but your computer might not be! Someone could make a malware that makes your computer display the right address and send the wrong address to the hardware wallet so that the transaction goes to him!
If both addresses match you can now confirm the transaction on the hardware wallet. The hardware will generate the transaction himself and broadcast it using your connected device to access the internet.
Receiving money works the same way. Your hardware wallet will generate an address when you click the “receive” button on the computer/phone interface. As for sending money, your hardware wallet will display the generated address on its own screen. You should always check that the generated address is the same on both screens (computer/phone and hardware wallet)!
Let’s say you are running a business and expect payments from customers in Bitcoin. A malware on your computer could just display the wrong address to you! You would copy and paste it to someone to be paid and the money would be sent directly from the customer to the hacker’s wallet. That would be sad…
If everything goes well, after checking your generated address, you can copy and paste it to someone and receive a payment.
Why chose a hardware wallet over a software wallet?
There are multiple reasons to chose a hardware wallet over a software wallet. The different types of wallets are compared here but it can be summed up to two things:
- You are have large amounts of cryptocurrencies and you want to store them safely
- You want to make transactions from time to time and it would be daunting to use a paper wallet
- You don’t trust exchanges to keep your coins
- You don’t trust your own computer/phone to be safe enough for your money
- You don’t mind spending a bunch of money to buy one!
If everything checks out, go get one right now!
Having a question or suggestion about the article?
Tell me on Twitter where I'm @vincentdnl!
Help others understand Bitcoin and cryptocurrencies by sharing this post!