The interest in cryptocurrencies has perked up with Facebook announcing its intention to venture into GlobalCoin, a cryptocurrency for payments, purchases and services on its social media website. Discover more about cryptocurrencies and the top cryptocurrency wallets in this article.
Cryptocurrency, also defined as digital money, can be used to purchase goods and services. It is electronic money created by technology that controls how it is created, protects transactions and handles the identities of its users. Cryptocurrency (a mashup of the words cryptography and currency) is computer technology that is used for security, hiding information, identities and more. Currency simply means ‘money currently in use’. It is designed to be quicker, cheaper and more reliable compared to legacy currencies issued by national governments.
In the case of cryptocurrency, users transact directly with each other and store their money themselves. They can send money by themselves without any middleman, while transactions are affordable and fast. To maintain the integrity and authenticity of transactions, every user of the cryptocurrency can simultaneously record and verify his or her own transactions, as well as the transactions of everyone else. The record of all the digital transactions is called the ledger and this is publicly available to anyone. The first cryptocurrency was Bitcoin.
Bitcoin was first created in 2009 by Satoshi Nakamoto. It does not rely on government money and transactions but is transacted between anonymous people without any banks or middlemen. Every transaction is recorded on a digital record kept by many people across the world known as the blockchain. Bitcoin is a virtual monetary unit and therefore has no physical representation.
A Bitcoin unit is divisible and can be divided into 100 million Satoshis, the smallest fraction of a Bitcoin. The Bitcoin blockchain is a data file that carries the records of all past Bitcoin transactions, including the creation of new Bitcoin units. It is often referred to as the ledger of the Bitcoin system. The Bitcoin blockchain consists of a sequence of blocks, where each block builds on its predecessors and contains information about new Bitcoin transactions. The average time between Bitcoin blocks is 10 minutes. The first block, block #0, was created in 2009; and, at the time of this writing, block #494,600 was appended as the most recent one to the chain. Because everyone can download and read the Bitcoin blockchain, it is a public record, a ledger that contains Bitcoin ownership information for any point in time.
The properties of cyptocurrencies
Listed below are the broad features of typical cryptocurrencies.
- Encryption: In cryptocurrencies, two keys are created. These are linked to each other mathematically, i.e., one key is for encryption and the other for decryption. The key used for encryption becomes the public key and can be shared with the public to accept payments. The key used for decryption is the private key and must be kept secret to access the cryptocurrencies.
- Decentralised organisation: Cryptocurrencies function as decentralised systems. They are based on a set of protocols not governed by a single person and function on predefined mathematical laws that the entire network comes to a consensus on.
- Distributed systems: Also known as Distributed Ledger Technology (DLT), this is the system by which the blockchain operates across all the computers and every transaction gets verified and recorded on all of them. Everyone has access to others’ ledgers and transactions get verified by the members on the network.
- Open source: Cryptocurrencies are open source. They can be modified and used by developers to create APIs without paying any additional fees. Developers can design apps and software for exchange and management.
- Cryptocurrency mining: This is a process that results in two activities – the verification of transactions and the generation of new cryptocurrencies. New currency is generated as a reward to the miners because of their efforts towards the verification process. Mining is a process that can be carried out by anyone with the required hardware devices and an Internet connection.
A cryptocurrency wallet (or crypto-wallet) is a secure digital currency wallet used to store, send and receive digital currency like Bitcoin. It is a software program to manage digital money by storing private and public keys, and interact with various blockchains to enable users to send and receive digital currency and monitor the balance. In cryptocurrency wallets, the public key performs the task of allowing other wallets to make payments to the wallet’s address, whereas the private key enables the spending of cryptocurrency from the address.
How cryptocurrency wallets work
Every cryptocurrency wallet depicts a bank account number. Currently, the bank account number has to be shared with other users, to enable them to transfer funds to one’s account, from other users accounts. It can be shared with an employer to transfer one’s salary, with a customer to transfer payments due to us or with any other person to whom we want to transfer money to. When anyone sends cryptocurrency to another person, they are transferring their coins’ ownership to the receiver’s wallet address. To be able to spend the coins, the receiver must have the private key that matches the public address the currency is assigned to. When the private and public keys match, the digital wallet balance gets increased.
In the world of cryptocurrency, if anyone wants to transfer coins to you, all you do is give them your wallet address. Just like in the real world, no two wallet addresses are ever the same, which means that there is no chance that somebody else will get your funds. Also, there is no limit to the amount of wallet addresses you can create.
Here is what a Bitcoin address looks like:
As you can see, it uses a combination of numbers and letters, both upper case and lower case. As most blockchains are transparent, it is easy to find out how much money a certain cryptocurrency wallet has, as well as the transactions the owner has previously made. However, a cryptocurrency wallet address does not reveal the real-world identity of its owner, which is why the blockchain is referred to as ‘pseudonymous’.
Here is an example of a public and a private key.
Types of cryptocurrency wallets
There are three types of cryptocurrency wallets – software, hardware and paper based. Software wallets can be sub-categorised into three types – desktop, mobile or Web/online wallets. The different types of wallets include full node, custodial, coin-specific, network-specific, and universal or multi-coin wallets.
- Hardware wallets: These are termed as physical devices to store private keys offline and are connected to computers for users to log in and access the blockchain. In terms of security, hardware wallets are considered very strong. These wallets are never connected to the Internet except to transfer funds. Examples include Ledger Nano S, Trezor, Keep Key, etc.
- Software wallets: Termed a Bitcoin application, these are installed on a computer to allow complete control and great security, as Bitcoin is accessed from specific users’ computers. The software called Bitcoin Core was developed and supported by the Bitcoin Foundation. It creates a wallet.dat file which stores the data with regard to a user’s personal Bitcoin wallet. It is of three types — desktop, mobile and online.
Desktop wallets: These are downloaded to a computer and accessed from that device only. They are secure, but whenever there is any computer problem, the wallet software gets impacted. Examples are the Exodus and Electrum wallets.
Mobile wallets: These are wallets that run only on smartphones using the app, and provide portability and flexibility to the user. Examples include Jaxx, Freewallet and Infinito wallet.
Online wallets: These are wallets that run on the cloud and can be accessed from any device. An example is Guarda.
- Paper wallets: These are termed a ‘software application’. Here the user has to print a QR code for both the public and private keys to send and receive digital currency. These are categorised as cold wallets as the keys are stored offline. An example is the Verge Paper wallet.
- Miscallaneous wallets
a. Full node wallet: In this case, the user controls private keys and hosts a full copy of the blockchain.
b. Custodial wallet: This type of wallet lets the user control private keys. Most exchange wallets are custodial wallets.
c. Coin-specific: Such wallets only work with specific coins.
d. Network-specific: These wallets hold multiple tokens on a single network.
e. Universal/multi-coin wallet: Such wallets hold addresses from multiple coins.
A guide to protecting cryptocurrency wallets
- Regular backup: All types of software wallets should be backed up at regular intervals of time, for security. In the case of desktop wallets, the wallet.dat file should be encrypted with a password and multiple copies should be made on other computers or pen drives. In the case of online backups, regular password changes with a strong password are recommended. It is also best to have multi-factor authentication, for security.
- Regular updates: All the wallets should be updated with the latest Bitcoin wallet software to guarantee the latest security enhancements.
- Enhanced security layers: The safety of your money is solely your responsibility, so try to add additional layers of security to your cryptocurrency wallet. Start with a strong password on all the devices you have the wallet software installed on. Choose wallet service providers with strong security policies like two-factor authentication and pin code request every time a wallet application is opened.
The top open source cryptocurrency wallets
Cryptocurrency adaption is on rise across the world, so wallet selection becomes quite complex. In this article, some of the best and most secure open source cryptocurrency wallets are listed.
Breadwallet: Breadwallet is an open source cryptocurrency mobile wallet designed by the Bread company in 2015. The Breadwallet app directly links with the respective blockchains to increase the speed of transactions with a simple-to-use interface. Initially, Breadwallet was designed for Bitcoins only, but it has expanded to support other currencies also, like Ethereum, Bread Coin and Bitcoin Cash.
To use Breadwallet, the user has to follow these steps:
- Download the app from Google’s Play Store or Apple’s App Store on a smartphone.
- Navigate and click on ‘Create New Wallet’.
- Select ‘6-Pin Code (Private Key)’ to log into the wallet in order to run transactions.
- Use the code to log into the wallet. At this point, the wallet will generate a ‘seed phrase’ that will be required to recover the tokens in case the phone gets lost.
- To add tokens such as Bitcoin, you need to tap the ‘Receive’ icon. It will generate an address referred to as a QR code that you should use to direct the coins from the Bitcoin platform.
- To send coins, navigate to the ‘Send’ icon and enter the receiving address. Note that the app provides the option of scanning or writing the receiving address for easier management.
- Compatible with Android and iOS.
- There are no fees for performing transactions except the network fees of the coin in which the user is performing transactions.
- There is no need to sign up or register to perform transactions. It is simple and easy to use as it is an open source platform.
Pros: User friendly, free, open source, direct connection with Bitcoin blockchain, tough-ID, and the ability to buy Bitcoin directly using Bread App. Multiple wallet addresses are generated automatically for every transaction.
Cons: Frequent app crashes, lacks two-factor authentication, slow network synchronisation, lacks multi-signature transactions, limited altcoin support, and higher charges for transactions as compared to other wallets.
Official website: https://brd.com/
Copay: Copay is an open source, secure, HD-multi-signature Bitcoin wallet, allowing end users (senders and receivers) to have complete control of the private keys required to access Bitcoin. It uses the Bitcoin Wallet Service (BWS) for peer synchronisation and network interfacing. The Copay app securely stores multiple, distinct Bitcoin wallets, allowing both business- and privacy-conscious users to keep funds carefully separated. It was created by BitPay Inc. and is maintained by BitPay along with hundreds of contributors.
- BIP32 hierarchical deterministic (HD) address generation and wallet backups.
- Payment protocol (BIP70-BIP73) support for payment requests and secure Bitcoin payments.
- BIP39 support for wallet backups.
- Push and email notifications for payments and transfers.
- Supports 150+ currency pricing options.
- Supports buying and selling Bitcoins and Amazon.com gift cards.
- Supports Trezor and Ledger Hardware Wallets.. Put “.” in front of the point, which is missing
Pros: Highly secure and private, supports multiple platforms and devices, and operates as a multi-signature wallet.
Cons: Only stores Bitcoin and Bitcoin Cash, and lacks two-factor authentication. Apps are sometimes slow and it has limited user support.
Official website: https://github.com/bitpay/copay
Jaxx: Jaxx is an open source, multi-cryptocurrency wallet supporting multiple coins including Bitcoin, Ether, Dash, Ether Classic, Litecoin, DAO, Zcash and others. It is available on multiple platforms (Windows, Linux, Chrome, Firefox, Android and iOS). With Jaxx’s 12-word Masterseed, users don’t have to worry about managing the private keys of their different blockchain assets. Jaxx doesn’t access the funds in any way, but with this key, users can easily recover their wallets if they lose access to the device they were on. Users can easily exchange currencies between Bitcoin, DAO and Ether through ShapeShift, using Jaxx. If you are looking for a multi-currency wallet, Jaxx is a perfect choice.
- Support for 65 currencies including cryptocurrencies and ERC20 tokens.
- Improved security model to protect sensitive information using AES-256 encryption enhanced by 5000 rounds of pbkdf2 password hashing.
- Hierarchical deterministic (HD) wallet support for safeguarding privacy rights.
- Easy to use in-person transaction using QR code.
- Pairs across devices — it easily syncs across devices (mobile, desktop, extension) by scanning a pairing token or inputting seed.
- Menu animations deliver stellar UI/UX.
- Provides three custom fee options – from low to high fees for faster transactions.
Pros: Multi-currency, good security, multiple platforms, user friendly, and easy exchange of cryptocurrencies.
Cons: Slow to load, backdoors in apps, and seed extraction vulnerability.
Official website: https://jaxx.io/
Armory: This is the first open source cold wallet for Bitcoin storage that has multi-signature support. The wallet has advanced security features with a simple intuitive dedicated interface for Bitcoin users looking for a safe storage option. Armory’s wallet software is based on the Python programming language. It is open source, which means it can be used as a platform for creating Bitcoin apps such as exchanges and crowdfunding platforms.
Armory provides cold storage support, so your private keys are stored offline, protecting them from any type of online attacks or hacks. Armory is also popular because it uses the Glacier Protocol, which is famous for being implemented in the most secure of cold storage systems for Bitcoins. The wallet is compatible with Windows, Mac OS X and Linux systems. The only cryptocurrency that the wallet supports is Bitcoin. The main advantage of Armory is that you can build a secure offline Bitcoin wallet. This lets you manage your wallet on a computer that is never connected to the Internet, making it a shut-tight system. All the private key data is kept only on the offline computer, significantly reducing the chances of hacking.
- Supports offline, cold storage wallets.
- Toggles between Standard, Advanced and Expert modes to allow different customisation options.
- Decentralised multi-signature lockboxes.
Pros: Top-end security features, such as hierarchical deterministic (HD) and multi-signature support, and cold storage support allowing users to manage Bitcoin without the Internet.
Cons: No mobile support, lack of two-factor authentication, and is not for beginners.
Official website: https://www.bitcoinarmory.com/
GreenAddress: GreenAddress is a multi-signature open source wallet with a high level of security because of the use of special trusted ECDSA key pairs to transfer funds. GreenAddress offers desktop, online and mobile (Android and iOS) wallets. Private keys are never held by the third-party server side. Payments have to be approved by GreenAddress itself, which is an advantage in some ways as it provides the same restrictions as traditional banks on large transfers.
- Per-transaction 2FA via multi-signature, of four different kinds: email, SMS, robot call and Google Authenticator.
- 2-of-2 multi-sig accounts: Creates accounts that can take advantage of GreenAddress’ trusted-third-party instant confirmations. Account recovery without access to GreenAddress is achieved with pre-generated nLockTime transactions.
- Transaction information within 2FA message.
- BIP0039 mnemonics for sending/receiving protected Bitcoins.
- Dynamic and comfortable fees for transactions.
- Prevention from malware, theft and firewalls with reliable encryption.
- Barcode usage for sending and receiving funds.
Pros: High-security with two-factor authentication, multi-platform, open source, multi-sig wallets, and API tools available.
Cons: Not good for beginners, setup takes a long time, and it only supports Bitcoin.
Official website: https://greenaddress.it/en/
- Compatible with Ethereum, Ethereum Classic and other ERC-20 tokens.
- Open source with access via almost all operating systems.
- Doesn’t charge any fees from users.
Pros: Free service, no storage of sensitive data on MyEtherWallet servers, supports offline cold transactions, and is clear and easy to understand.
Cons: Prone to phishing attacks, no hierarchical deterministic key generation, multi-signature and has two-factor authentication.
Official website: https://www.myetherwallet.com/
Electrum: Electrum is a lightweight Bitcoin wallet that navigates the thin line between a good user interface and functionality. It encrypts private keys locally, supports cold storage and provides multi-signature capabilities with minimal resource usage on machines.
- Encrypted wallet: This is a file that contains Bitcoin private keys and is protected with a password.
- Deterministic key generation: If you lose your wallet file, you can recover it from its seed.
- Transactions are signed locally: Private keys are not shared with the server.
- Many leading hardware wallets can interface with Electrum.
Pros: Firewall friendly, written in Python, support for third-party plugins and Bitcoin URIs, signed URIs and Bitcoin aliases, and no single point of failure.
Cons: Only supports Bitcoin, and is not suitable for beginners.
Official website: https://electrum.org/#home
The author works in a Graduate School, Duy Tan University in
Vietnam. He loves to work and research on open source technologies,
sensor communications, network security, Internet of Things etc. He
can be reached at email@example.com. YouTube channel:
Gyaan with Anand Nayyar at www.youtube.com/anandnayyar.