Open main menu

Wikipedia β

A paper printable bitcoin wallet consisting out of one bitcoin address for receiving and the corresponding private key for spending.

A cryptocurrency wallet stores the public and private keys which can be used to receive or spend the cryptocurrency. A wallet can contain multiple public and private key pairs.[1][better source needed][2][better source needed][3][not in citation given] There are over nine hundred cryptocurrencies; the first and best known is bitcoin.[4] Some wallets support multiple cryptocurrencies. The cryptocurrency itself is not in the wallet. In case of bitcoin and cryptocurrencies derived from it, the cryptocurrency is decentrally stored and maintained in a publicly available ledger.[5]:93 Every piece of cryptocurrency has a private key. With the private key, it is possible to write in the public ledger, effectively spending the associated cryptocurrency.

Contents

Wallet accessEdit

When choosing a wallet, you must keep in mind who has access to (a copy) of your private keys and thus has potentially access to your 'money'. Just like with a bank, you have to trust the provider to keep your cryptocurrency safe. Trust was misplaced in the case of the Mt. Gox exchange, who 'lost' most of their clients bitcoins. Downloading a cryptocurrency wallet from a wallet provider to your computer or phone does not automatically mean that you are the only one who has a copy of your private keys. For example with Coinbase you can install a wallet on your phone, but you can also access the same wallet through their website. The software can also have consciously or unconsciously vulnerabilities. For receiving cryptocurrency you do not need access to your wallet. The sending party only needs to know the destination address. Anyone can send cryptocurrency to an address. Only the one who has the private key of the corresponding address can use it.[2][better source needed][3][better source needed]

BackupEdit

A backup of a wallet can come in different forms like:

  • A (encrypted) file like wallet.dat or wallet.bin which contains all the private keys.
  • A mnemonic sentence from which the root key can be generated, from which all your private keys can be recreated. Preferably these words could be remembered or written down and stored on a physical other location(s).
  • A private key like: KxSRZnttMtVhe17SX5FhPqWpKAEgMT9T3R6Eferj3sx5frM6obqA (see the picture).

When you lose your private keys and your backup then you lose your cryptocurrency! There is no backdoor. When using a webwallet, the private keys are managed by the provider. When owning cryptocurrency you should carefully select who you trust managing your cryptocurrency. An (encrypted) copy of your wallet should be kept in a trusted place. Preferably off-line.[3][better source needed] Some people 'write' their mnemonic sentence or private key on metal, because it is robust.[6]

Wallet characteristicsEdit

Software walletEdit

 
An Ethereum wallet on an iPhone.

They come in different forms like:

  • An application installed locally on a computer, telephone or tablet (see the picture).
  • When using a webwallet the private keys are managed by a trusted third party. Some web based wallet providers use two-factor (like Google Authenticator) for extra security. In that case a keylogger is not enough for a hacker to steal your credentials and get access to the wallet.[7][better source needed]
  • Cryptocurrency exchanges link the user's wallet to their centrally managed wallet(s). For example: When trading bitcoins between users on the Kraken exchange the trades are written in their private ledger (off-chain transaction). Only when a user wants to enter with his cryptocurrency into the exchange or when he want to take his cryptocurrency out of the exchange, then the transaction is written onto the public bitcoin blockchain (on-chain transaction).

Full clients verify transactions directly on a local copy of more than 60GB of the blockchain, or a subset of the blockchain.[8][better source needed] Lightweight clients consult full clients.[9]

Hardware walletEdit

 
An actual bitcoin transaction from a webbased cryptocurrency exchange to a hardware wallet.

They are considered the most secure, because the private keys never leave the physical wallet. They are created, live (transactions) and die (deleted) on the hardware wallet. If a hardware wallet uses a mnemonic sentence for backup then you should not electronically store the mnemonic sentence, but write it down and store in a physical different location(s). Storing the backup electronically lowers the security level to a software wallet level. Most hardware wallets, like LedgerWallet and Trezor, have models that require the user to physically press or touch the wallet in order to make a transaction. Worst case scenario is that a computer is infected with malware and the amount and destination address is altered by a hacker. The private keys remain safe. Some hardware wallets have a display where you have to enter a pin to open the wallet and where you can verify the transaction before executing it. When reading a mnemonic sentence from the physical display of the hardware wallet a screencapture of an infected computer will not reveal the mnemonic sentence.[10][11]

Multisignature walletEdit

With a multisignature (multisig) wallet multiple users have to sign (with their private key) for a transaction out of that wallet (public key address).[12][13][14]

Brain walletEdit

With a brain wallet someone remembers the information to regenerate the private and public key pair(s), like a mnemonic sentence.[15][16]

Hot and cold walletEdit

Terms also used in the context of cryptocurrency wallets are hot and cold wallets. Hot wallets are connected to the internet while cold wallets are not. With a hot wallet you can spend your cryptocurrency at any time. A cold wallet has to be 'connected' to the internet first. As long as something is connected to the internet, it is vulnerable to an attack. The short version is that software wallets (where the device is turned on or the wallet software is running) are considered hot wallets. A (not connected) hardware wallet is considered a cold wallet.[17]

Key derivationEdit

Deterministic walletEdit

With a deterministic wallet a single key can be used to generate an entire tree of key pairs. This single key serves as the "root" of the tree. The generated mnemonic sentence or word seed is simply a more human-readable way of expressing the key used as the root, as it can be algorithmically converted into the root private key. Those words, in that order, will always generate the exact same root key. A word phrase could consist of 24 words like: begin friend black earth beauty praise pride refuse horror believe relief gospel end destroy champion build better awesome. That single root key is not replacing all other private keys, but rather is being used to generate them. All your addresses still have different private keys, but they can all be restored by that single root key. The private keys to every address it has ever given out can be recalculated given the root key. That root key, in turn, can be recalculated by feeding in the word seed. With the mnemonic sentence you have a backup of your wallet. If a wallet supports the same (mnemonic sentence) technique, then the backup can also be restored on a third party software or hardware wallet.

A mnemonic sentence is considered secure. It creates a 512-bit seed from any given mnemonic. The set of possible wallets is 2512. Every passphrase leads to a valid wallet. If the wallet was not previously used it will be empty.[5]:104

Non-deterministic walletEdit

In a non-deterministic wallet, each key is randomly generated on its own accord, and they are not seeded from a common key. Therefore, any backups of the wallet must store each and every single private key used as an address, as well as a buffer of 100 or so future keys that may have already been given out as addresses but not received payments yet.[5]:94

ReferencesEdit