Hardware wallet: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
Dstanchfield (talk | contribs)
JonathanCross (talk | contribs)
General cleanup and fixing / updating links and removing redundant / broken links.
Line 1: Line 1:
A '''hardware wallet''' is a device that stores a part of a user's [[wallet]] securely in mostly-offline hardware. They have major advantages over other wallet types:
A '''hardware wallet''' is a special type of [[wallet|bitcoin wallet]] which stores the user's private keys in a secure hardware device.


* the key is often stored in a protected area of a microcontroller, and cannot be transferred out of the device in plaintext
They have major advantages over standard software wallets:
 
* private keys are often stored in a protected area of a microcontroller, and cannot be transferred out of the device in plaintext
* immune to computer viruses that steal from software wallets
* immune to computer viruses that steal from software wallets
* can be used securely and interactively, as opposed to a [[paper wallet]] which must be imported to software at some point
* can be used securely and interactively, as opposed to a [[paper wallet]] which must be imported to software at some point
Line 14: Line 16:
=== Pi Wallet - cold storage ===
=== Pi Wallet - cold storage ===
[[File:Piwallet.jpeg|300px|thumb|left|Pi-Wallet]]
[[File:Piwallet.jpeg|300px|thumb|left|Pi-Wallet]]
[http://www.pi-wallet.com/ Pi-Wallet Shop]
[http://www.pi-wallet.com/pages/what-is-pi-wallet Further informations about Pi-Wallet]


The Pi-Wallet is comparable to an offline Notebook.  
The Pi-Wallet is a small computer with the [[Armory]] bitcoin client.


However it combines all features of the Armory bitcoin client (e.g. offline transaction signing) with the advantages of a tiny computer.
Transactions are signed offline, then transferred on a USB stick via [https://en.wikipedia.org/wiki/Sneakernet Sneakernet] to an online system for broadcasting.


To sign offline-transaction you will need an (unused) USB stick.
[https://www.pi-wallet.com/ pi-wallet.com]




Line 28: Line 27:


=== [[TREZOR]] The Bitcoin Safe ===
=== [[TREZOR]] The Bitcoin Safe ===
[http://bitcointrezor.com BitcoinTrezor.com]
[[File:Trezor-tx.jpg|300px|thumb|left|Confirming the transaction with TREZOR]]
[[File:Trezor-tx.jpg|300px|thumb|left|Confirming the transaction with TREZOR]]


[[TREZOR]] is a secure bitcoin storage and a transaction signing tool. The private keys are generated by the device and never leave it thus they cannot be accessed by a malware.
[[TREZOR]] is a secure bitcoin storage and a transaction signing tool. The private keys are generated by the device and never leave it thus they cannot be accessed by a malware.


It uses a deterministic wallet structure which means it can hold an unlimited number of keys (BIP32/BIP44). A recovery seed is generated when the device is initialized. In case TREZOR gets lost or stolen, all its contents can be recovered using this seed (private keys, bitcoin balance and transaction history) into a new device or another BIP39/BIP44 compatible wallet.  
It uses a deterministic wallet structure which means it can hold an unlimited number of keys ([[BIP 0032]]/[[BIP 0044]]). A recovery seed is generated when the device is initialized. In case TREZOR gets lost or stolen, all its contents can be recovered using this seed (private keys, bitcoin balance and transaction history) into a new device or another [[BIP 0039]]/[[BIP 0044]] compatible wallet.  


TREZOR also introduced a unique way of PIN entering preventing keyloggers from recording it even when entered on a compromised computer. An encryption passphrase can be set on top of the PIN protection. More passphrases can be used for plausible deniability.
TREZOR also introduced a unique way of PIN entering preventing keyloggers from recording it even when entered on a compromised computer. An encryption passphrase can be set on top of the PIN protection. More passphrases can be used for plausible deniability.


[http://BuyTrezor.com E-shop BuyTrezor.com] | [http://doc.satoshilabs.com/ TREZOR Documentation]
[https://BuyTrezor.com E-shop BuyTrezor.com] | [https://doc.satoshilabs.com/ TREZOR Documentation] | [https://bitcointrezor.com BitcoinTrezor.com]


<br clear="all">
<br clear="all">


=== BTChip HW.1 - USB Smartcard Hardware Wallet  ===
=== Ledger HW.1 - USB Smartcard Hardware Wallet  ===
[https://www.hardwarewallet.com HW.1 Home Page]
 
[[File:Btchip_dongle.jpg|220px|thumb|left|HW.1 inserted in a laptop]]
[[File:Btchip_dongle.jpg|220px|thumb|left|HW.1 inserted in a laptop]]


HW.1 is an implementation of a deterministic (BIP 32) Hardware Wallet on a USB smartcard.
HW.1 is an implementation of a deterministic ([[BIP 0032]]) Hardware Wallet on a USB smartcard.


It is typically used as a blind secure device for multi signature transactions - holding a set of derived private keys and signing transactions without requiring user confirmation.
It is typically used as a blind secure device for multi signature transactions - holding a set of derived private keys and signing transactions without requiring user confirmation.
Line 53: Line 48:
Power users can rely on it to confirm all transactions with a second factor scheme turning the dongle into a keyboard typing what the user is supposed to have signed, as a protection against malware.
Power users can rely on it to confirm all transactions with a second factor scheme turning the dongle into a keyboard typing what the user is supposed to have signed, as a protection against malware.


It is also possible to customize HW.1 for more specfic needs, such as creating a prepaid card without revealing the deterministic seed before it is received by the user, or securing bitcoin transactions on a server.
It is also possible to customize HW.1 for more specific needs, such as creating a prepaid card without revealing the deterministic seed before it is received by the user, or securing bitcoin transactions on a server.


[https://buy.hardwarewallet.com E-shop] | [https://btchip.github.io/btchip-doc/bitcoin-technical.html Technical Documentation]
[https://www.ledgerwallet.com/products/3-ledger-hw-1 E-shop] | [https://ledgerhq.github.io/btchip-doc/bitcoin-technical.html Technical Documentation]


<br clear="all">
<br clear="all">


=== Ledger Nano - USB Smartcard Hardware Wallet  ===
=== Ledger Nano - USB Smartcard Hardware Wallet  ===
[[File:ledger_wallet_photo.jpg|300px|thumb|left|Ledger Wallet USB]]
[[File:ledger_wallet_photo.jpg|300px|thumb|left|Ledger Wallet USB]]


Line 67: Line 61:
The second factor verification of the transaction signature can be done either with a paired smartphone (Android, iOS) or a physical security card.
The second factor verification of the transaction signature can be done either with a paired smartphone (Android, iOS) or a physical security card.


The Ledger Wallet Chrome application (available also on Chromium) provides an easy onboarding as well as a seamless user experience, and the Nano is compatible with numerous third party software: Electrum, Mycelium, GreenAddress, Greenbits, Coinkite and Copay.
The Ledger Wallet Chrome application (available also on Chromium) provides an easy onboarding as well as a seamless user experience, and the Nano is compatible with numerous third party software: [[Electrum]], [[Mycelium]], [[GreenAddress]], Greenbits, [[Coinkite]] and Copay.


[https://www.ledgerwallet.com/products/1-ledger-nano Ledger Nano product page] | [https://github.com/LedgerHQ Source and specifications]
[https://www.ledgerwallet.com/products/1-ledger-nano Ledger Nano product page] | [https://github.com/LedgerHQ Source and specifications]
Line 74: Line 68:


=== Ledger Unplugged - NFC Smartcard Hardware Wallet  ===
=== Ledger Unplugged - NFC Smartcard Hardware Wallet  ===
[[File:ledger_unplugged_photo.jpg|300px|thumb|left|Ledger Unplugged NFC]]
[[File:ledger_unplugged_photo.jpg|300px|thumb|left|Ledger Unplugged NFC]]


Line 85: Line 78:
<br clear="all">
<br clear="all">


=== [[BWALLET]] TREZOR clone ===
=== BWALLET TREZOR clone ===
[http://mybwallet.com MyBWALLET.com]


[[File:BWALLET_Trezor_Clone.jpeg|200px|thumb|left|Chinese clone of Trezor]]
[[File:BWALLET_Trezor_Clone.jpeg|200px|thumb|left|Chinese clone of Trezor]]


[[BWALLET]] is a clone of Trezor by a Chinese company.
BWALLET is a clone of Trezor by a Chinese company.
Trezor code is open source and this device operates like a Trezor.
Trezor code is open source and this device operates like a Trezor.
However, this product has been [https://www.reddit.com/r/Bitcoin/comments/2tyier/bwallet_review_by_trezor_developer/ reviewed by Merek aka Slush(Trezor developer)] and he has found some problems which makes this device less than 100% compatible, for example it doesn't work with [http://mytrezor.com myTREZOR.com] website and it does not work with Trezor official firmware.  
However, this product has been [https://www.reddit.com/r/Bitcoin/comments/2tyier/bwallet_review_by_trezor_developer/ reviewed by Merek aka Slush(Trezor developer)] and he has found some problems which makes this device less than 100% compatible, for example it doesn't work with [http://mytrezor.com myTREZOR.com] website and it does not work with Trezor official firmware.  


[http://www.coincola.com/shops/54c1fc24963d3759182b2c7f?locale=en Buy BWALLET]
[http://mybwallet.com MyBWALLET.com] | [http://www.bidingxing.com/en/bwallet Buy BWALLET]


<br clear="all">
<br clear="all">


=== KeepKey: Your Private Bitcoin Vault ===
=== KeepKey: Your Private Bitcoin Vault ===
[https://www.keepkey.com www.keepkey.com]
[[File:keepkey.jpg|300px|thumb|left|KeepKey showing a bitcoin transaction that needs to be manually approved.]]
[[File:keepkey.jpg|300px|thumb|left|KeepKey showing a bitcoin transaction that needs to be manually approved.]]


KeepKey is a USB device that stores and secures your bitcoins. When you entrust KeepKey with your money, each and every bitcoin transaction you make must be reviewed and approved via it's OLED display and confirmation button.
KeepKey is a USB device that stores and secures your bitcoins. When you entrust KeepKey with your money, each and every bitcoin transaction you make must be reviewed and approved via it's OLED display and confirmation button.


KeepKey has a unique recovery feature utilizing a rotating cipher to restore private keys with a BIP39 recovery seed.  This means it is not necessary to store your private keys on KeepKey: the recovery process is secure enough so that KeepKey can be used as a transaction device for paper wallets.  
KeepKey has a unique recovery feature utilizing a rotating cipher to restore private keys with a [[BIP 0039]] recovery seed.  This means it is not necessary to store your private keys on KeepKey: the recovery process is secure enough so that KeepKey can be used as a transaction device for paper wallets.  


[https://www.keepkey.com www.keepkey.com]
[https://www.keepkey.com keepkey.com]


<br clear="all">
<br clear="all">


=== CoolWallet: The Ultimate Bitcoin Safe ===
=== CoolWallet: The Ultimate Bitcoin Safe ===
[https://coolbitx.com coolbitx.com]
<!-- 2016-04-09: Consider removing this device until actually for sale? -->


[[File:CoolWallet in the box.jpeg|300px|thumb|left|CoolWallet showing Launch App, waiting for user to connect with smartphone via Bluetooth]]
[[File:CoolWallet in the box.jpeg|300px|thumb|left|CoolWallet showing Launch App, waiting for user to connect with smartphone via Bluetooth]]
Line 127: Line 117:


=== BlochsTech card: Your user friendly Bitcoin wallet ===
=== BlochsTech card: Your user friendly Bitcoin wallet ===
[http://www.BlochsTech.com www.BlochsTech.com]
<!-- 2016-04-09: Possible vaporware / scam?  Website insecure & badly designed with no substantial info. Consider finding technical docs, real reviews or removing this device. -->


[[file:BlochsTech Bitcoin card hardware wallet.jpg|300px|thumb|left|Graphic printed on front of BlochsTech cards.]]
[[file:BlochsTech Bitcoin card hardware wallet.jpg|300px|thumb|left|Graphic printed on front of BlochsTech cards.]]
Line 137: Line 127:
however in the long run it is fully capable of functionally replacing the VISA system in all nations.
however in the long run it is fully capable of functionally replacing the VISA system in all nations.


[http://www.BlochsTech.com www.BlochsTech.com]
[http://www.BlochsTech.com BlochsTech.com]


<br clear="all">
<br clear="all">


=== BitLox Bitcoin Hardware Wallet ===
=== BitLox Bitcoin Hardware Wallet ===
[http://www.bitlox.com www.bitlox.com]
[[file:Bitlox.jpg|300px|thumb|left|BitLox Bitcoin Hardware Wallet]]
[[file:Bitlox.jpg|300px|thumb|left|BitLox Bitcoin Hardware Wallet]]


Line 154: Line 142:
BitLox has also implemented several advanced security features not available on any other bitcoin hardware wallet.  
BitLox has also implemented several advanced security features not available on any other bitcoin hardware wallet.  


[http://www.bitlox.com www.bitlox.com]
[http://www.bitlox.com bitlox.com]


<br clear="all">
<br clear="all">
Line 172: Line 160:
=== BitSafe - allten/someone42's hardware wallet ===
=== BitSafe - allten/someone42's hardware wallet ===
[[File:Bitsafe-wallet-sizecompare.jpg|200px|thumb|left|Bitsafe wallet]]
[[File:Bitsafe-wallet-sizecompare.jpg|200px|thumb|left|Bitsafe wallet]]
[https://bitcointalk.org/index.php?topic=127587.0 BitSafe Hardware Wallet Development - BOM Ready - 50 kits being prepared]
[https://bitcointalk.org/index.php?topic=152517.0 Final BitSafe announcement]


Signing transactions only, requires USB host software for transactions & USB power. Has a OLED display and Confirm/Cancel buttons. Evolved out of someone42's prototype below, and has significant contributions from someone42 as well.
Signing transactions only, requires USB host software for transactions & USB power. Has a OLED display and Confirm/Cancel buttons. Evolved out of someone42's prototype below, and has significant contributions from someone42 as well.
Line 204: Line 192:
* kjj's Todo List discussion for client protocol requirements: [https://bitcointalk.org/index.php?topic=19080.msg272348#msg272348 in topic Re: Split private keys]
* kjj's Todo List discussion for client protocol requirements: [https://bitcointalk.org/index.php?topic=19080.msg272348#msg272348 in topic Re: Split private keys]
* paybitcoin's original post: [https://bitcointalk.org/index.php?topic=134277.0 Hardware Wallet Roundup]
* paybitcoin's original post: [https://bitcointalk.org/index.php?topic=134277.0 Hardware Wallet Roundup]
* [https://bitcointalk.org/index.php?topic=135090.0 This thread] about editing this very wiki entry.
* [https://www.coldhardware.com/ ColdHardware.com] - information about using Bitcoin hardware wallets for cold storage.
* [https://www.coldhardware.com/ ColdHardware.com] - information about using Bitcoin hardware wallets for cold storage.
* Various Hardware Wallets and Reviews: [http://www.offlinewallets.com/hardware-wallets Offline Hardware Wallets]
* Various Hardware Wallets and Reviews: [http://www.offlinewallets.com/hardware-wallets Offline Hardware Wallets]

Revision as of 02:09, 9 April 2016

A hardware wallet is a special type of bitcoin wallet which stores the user's private keys in a secure hardware device.

They have major advantages over standard software wallets:

  • private keys are often stored in a protected area of a microcontroller, and cannot be transferred out of the device in plaintext
  • immune to computer viruses that steal from software wallets
  • can be used securely and interactively, as opposed to a paper wallet which must be imported to software at some point
  • much of the time, the software is open source, allowing a user to validate the entire operation of the device

This page is an attempt to summarize all the known developments of hardware wallets that can use Bitcoin as part of their operation.


Purchasable hardware wallets (ordered chronologically)

Pi Wallet - cold storage

Pi-Wallet

The Pi-Wallet is a small computer with the Armory bitcoin client.

Transactions are signed offline, then transferred on a USB stick via Sneakernet to an online system for broadcasting.

pi-wallet.com



TREZOR The Bitcoin Safe

Confirming the transaction with TREZOR

TREZOR is a secure bitcoin storage and a transaction signing tool. The private keys are generated by the device and never leave it thus they cannot be accessed by a malware.

It uses a deterministic wallet structure which means it can hold an unlimited number of keys (BIP 0032/BIP 0044). A recovery seed is generated when the device is initialized. In case TREZOR gets lost or stolen, all its contents can be recovered using this seed (private keys, bitcoin balance and transaction history) into a new device or another BIP 0039/BIP 0044 compatible wallet.

TREZOR also introduced a unique way of PIN entering preventing keyloggers from recording it even when entered on a compromised computer. An encryption passphrase can be set on top of the PIN protection. More passphrases can be used for plausible deniability.

E-shop BuyTrezor.com | TREZOR Documentation | BitcoinTrezor.com


Ledger HW.1 - USB Smartcard Hardware Wallet

HW.1 inserted in a laptop

HW.1 is an implementation of a deterministic (BIP 0032) Hardware Wallet on a USB smartcard.

It is typically used as a blind secure device for multi signature transactions - holding a set of derived private keys and signing transactions without requiring user confirmation.

Power users can rely on it to confirm all transactions with a second factor scheme turning the dongle into a keyboard typing what the user is supposed to have signed, as a protection against malware.

It is also possible to customize HW.1 for more specific needs, such as creating a prepaid card without revealing the deterministic seed before it is received by the user, or securing bitcoin transactions on a server.

E-shop | Technical Documentation


Ledger Nano - USB Smartcard Hardware Wallet

Ledger Wallet USB

Ledger Nano protects your Bitcoin data within a smartcard. Its micro-processor certified against all types of attacks (both physical and logical), and has been used in the banking industry for decades (think credit card chips). The device connects to your computer through the USB port and will do all the Bitcoin cryptographic heavy lifting such as signing transactions inside its secure environment. You can therefore use your Bitcoin account with maximum trust, even on an insecure or compromised computer.

The second factor verification of the transaction signature can be done either with a paired smartphone (Android, iOS) or a physical security card.

The Ledger Wallet Chrome application (available also on Chromium) provides an easy onboarding as well as a seamless user experience, and the Nano is compatible with numerous third party software: Electrum, Mycelium, GreenAddress, Greenbits, Coinkite and Copay.

Ledger Nano product page | Source and specifications


Ledger Unplugged - NFC Smartcard Hardware Wallet

Ledger Unplugged NFC

The Ledger Unplugged is a credit card sized NFC hardware wallet. It embeds an open source Java Card app and is compatible with all NFC enabled Android phones.

The device can be used with Mycelium or Greenbits. In case of loss, you can restore it on any Ledger Wallet (Nano or another one) or all other compatible solutions (BIP 39).

Ledger Unplugged product page | Source code


BWALLET TREZOR clone

Chinese clone of Trezor

BWALLET is a clone of Trezor by a Chinese company. Trezor code is open source and this device operates like a Trezor. However, this product has been reviewed by Merek aka Slush(Trezor developer) and he has found some problems which makes this device less than 100% compatible, for example it doesn't work with myTREZOR.com website and it does not work with Trezor official firmware.

MyBWALLET.com | Buy BWALLET


KeepKey: Your Private Bitcoin Vault

KeepKey showing a bitcoin transaction that needs to be manually approved.

KeepKey is a USB device that stores and secures your bitcoins. When you entrust KeepKey with your money, each and every bitcoin transaction you make must be reviewed and approved via it's OLED display and confirmation button.

KeepKey has a unique recovery feature utilizing a rotating cipher to restore private keys with a BIP 0039 recovery seed. This means it is not necessary to store your private keys on KeepKey: the recovery process is secure enough so that KeepKey can be used as a transaction device for paper wallets.

keepkey.com


CoolWallet: The Ultimate Bitcoin Safe

CoolWallet showing Launch App, waiting for user to connect with smartphone via Bluetooth

CoolWallet is a credit card sized Bluetooth device that stores and secures your bitcoins and private keys. It fits in your wallet and works wirelessly.

Every Bitcoin transaction must be manually confirmed and approved through its e-paper display and button.

CoolWallet only acknowledges the paired smartphone. Whoever stole the CoolWallet are not able to steal any bitcoins. Using recovery Seed can restore all your bitcoins in case you lost the device.

coolbitx.com | Source and specifications


BlochsTech card: Your user friendly Bitcoin wallet

Graphic printed on front of BlochsTech cards.

The BlochsTech open Bitcoin card is an open protocol secure hardware Bitcoin wallet your grandmother could use. For shops it's faster to accept than slow QR code based wallets and more reliable as it works offline.

Currently it's of course in a novelty phase like Casascius coins (of which thousands were sold), however in the long run it is fully capable of functionally replacing the VISA system in all nations.

BlochsTech.com


BitLox Bitcoin Hardware Wallet

BitLox Bitcoin Hardware Wallet

BitLox is a metal cased (aluminum or titanium) bitcoin hardware wallet that works with their own web based wallet by USB and apps for iPhone and Android using Bluetooth LE.

At present it is the only bitcoin hardware wallet you can buy that works with iPhone. The device weighs one ounce and is the size of a credit card 4 mm thick.

Bitlox allows you to set up hidden wallets. Unlike other hardware wallets your seed is never displayed on a connected computer or phone but only on the Bitlox. All your wallet, device and transaction PINs are only entered on the BitLox and never on any app.

BitLox has also implemented several advanced security features not available on any other bitcoin hardware wallet.

bitlox.com


Not purchasable hardware wallets

BitcoinCard Megion Technologies-Card based wallet

Bitcoin Card

Bitcoincard Home Page

Excellent review by evoorhees

Incorporates a e-paper display, keypad, and radio (custom ISM band protocol.) Unfortunately it is fairly limited in terms of transaction I/O, requiring a radio gateway or another bitcoincard wherever funds need to be transferred.


BitSafe - allten/someone42's hardware wallet

Bitsafe wallet

Final BitSafe announcement

Signing transactions only, requires USB host software for transactions & USB power. Has a OLED display and Confirm/Cancel buttons. Evolved out of someone42's prototype below, and has significant contributions from someone42 as well.

someone42's original prototype

someone42's original prototype

Hardware Bitcoin wallet - a minimal Bitcoin wallet for embedded devices

Signing transactions only, requires USB host software for transactions & USB power. All work is rolled into the above BitSafe wallet currently.

Other/Defunct but with good discussion:

Seems to have gone defunct around Dec 2011. Some good ideas though and seemed to have started on execution.
Great discussion and good ideas from jim618. Also linked the following video:
Clemens Cap of Uni Rostock explains the Electronic Bitcoin wallet device he's working on. It's based on adafruit microtouch device.
The use of Yubikeys. They only support symmetric crypto, so you'd have to trust the host device.

Smart Card based wallets

This type of device requires complete trust in the host device, as there is no method for user input. See Smart card wallet

Related Resources