As Ethereum moves closer to main stream adoption, Ethereum wallet engineers are hard at work improving the usability of their products. Despite this, managing Ethereum transactions and security of a user’s private key is not for a technophobe. Those who would prefer to avoid the risks associated with security may wish to use a 3rd party exchange to store Ether; you can read about this in our how to buy Ethereum guide. Those who want to take absolute control over their own Ether should read on.
The Ethereum blockchain is a shared history of every transaction ever to occur on the network. All balances are public but pseudonymous (displaying your identity is strictly opt-in) and all transactions are relayed by every node. Nodes play an important role in ensuring that transactions are valid, and transactions which aren’t valid are simply rejected from the network.
Ethereum wallets remove the complexities of forming and broadcasting valid transactions described above. Instead, they simply ask the user which address they wish to send their funds to, similar to how one may send a payment via an online bank transfer. When a transaction is sent, the information about that transaction is propagated across the network and then validated by the many thousands of Ethereum nodes in the network. Miners then include valid transactions in the next block – mining 1 block roughly every 15 seconds. Ethereum mining will be discussed in a separate article, however the important thing to note when it comes to wallets is that a transaction needs to be included in a block before it can be considered to have been sent. Most merchants will also require that an additional 20 blocks or more are mined on top of the block that the transaction was included in as a means to ensure its finality. For reasons not mentioned here, a transaction which is included in 1 block may actually be double spent if the block is later discarded.
To help get a visual explanation of the above, see this short video:
The above Ethereum addresses are called “public keys”. They are generated through the use of an individual’s private key and have a cryptographically secure association with each other. A single private key can generate an effectively infinite number of public keys. The funds sent to an Ethereum public key can then be controlled by the owner of the private key from which said public key was generated. This is true for all of the public keys that the private key generated. What all of this means is that the private key must remain private. Ethereum balances aren’t “downloaded” or stored in a spreadsheet, simply knowing the private key is enough to give anyone valid and full access to any funds residing on the relevant public keys. When someone says “backup your wallet”, it simply means that you should ensure another copy of your private key exists somewhere else. Private keys can be stored on paper, in secure cloud storage, printed into metal or stored on an SSD or hard drive. When considering an Ethereum wallet, it is wise to have some assurance that the private key is generated offline. If the generation of a private key requires an internet connection, then there is a risk that it could become compromised.
The above information is important to understand to some degree, but in reality the need to generate private/public keys and store them safely is simplified by 3rd party hardware/software. The following wallets have built an enormous reputation over the years, this guide will now explain a brief background on each and their suitability for new users.
A hardware wallet is effectively a specialized USB stick which remains offline and is secured by a “seed” which can be used to recover funds if the hardware fails or is stolen/lost. Both of these hardware wallets can be used to secure Ethereum and both offer effectively the same level of security. These wallets will destroy the private key if either the unlock PIN is entered incorrectly several times or the device is tampered with. The following have had their hardware and code stress tested and scrutinized by many talented hackers without significant issue:
The Ledger Nano S is the most user friendly hardware wallet for Ethereum. It has a simple browser extension which can be used to send/receive transactions and check balances. The Ledger Nano S can also store Ethereum Classic, Bitcoin and ERC20 (Ethereum) tokens.
The Trezor wallet is the longest running and most reputable hardware wallet for Bitcoin. The company has partnered with MyEtherWallet to offer Trezor-secured access to Ethereum, however the user experience is noticeably more challenging than that of the Ledger Nano S. Trezor has a fantastic web-interface for Bitcoin users and whilst Ethereum security is still phenomenal, it can be cumbersome for new users.
Exchange wallets have received poor publicity following the collapse of Mt Gox and a number of other exchange scandals in recent years. While storing funds on an exchange can be risky (you do not have control over the private key), one exchange has demonstrated a high level of trust for many millions of users.
Coinbase allows users to store Bitcoin, Ethereum and Litecoin in a user’s account. Accounts can be secured by 2 Factor Authentication and furthermore a “Vault” wallet can be created. Vaults are feature of Coinbase which go above and beyond typical security measures. The Vault allows users to secure Ethereum by requiring multiple parties to co-sign each transaction, or requiring that any withdrawal must have approval from two separate email addresses controlled by the same individual. Furthermore, a 48 hour time delay ensures that a user can cancel any movement of funds over this period. Funds are also covered by insurance and Coinbase is by far the most beginner friendly wallet for storing Ethereum.
Users who sign up to Coinbase.com on this link help to support EthereumPrice.org and will receive $10 worth of Bitcoin on the first deposit (over $100).