Off The Grid — Bitcoin and Ethereum Storage
No matter how improbable the breach of a digital currency exchange is, physically owning some currency is a good idea.
Even with the improved security from folks like Coinbase with offline storage and their vault account type requiring multiple forms of withdrawal verification, it is still wise to diversify how you’re storing digital currency the same way it’s smart to have a portion for an emergency.
According to Coinbase founder Brian Armstrong’s post How Coinbase Builds Secure Infrastructure To Store Bitcoin In The Cloud
Coinbase early on made a decision to store the vast majority (98%+) of customer bitcoin entirely offline...
What is Cold Storage?
Cold storage is storing digital currency offline. A simple method of offline storage has been creating a paper wallet. An image that can be printed onto paper with a Bitcoin or Ethereum wallet consisting of 2 ‘keys’. The public key (your wallet address / how other people send currency to you), and the private key (how you send currency). These paper wallets can be physically printed or saved as a file.
Companies have developed devices specifically for storing digital currency offline. These hardware devices are the easiest way to store offline, transport, and send / use digital currency for purchases. Devices include KeepKey, Trezor, and Ledger. I didn’t go this route because the devices above are only compatible with one or two currencies. I wanted a solution compatible for both Bitcoin and Ethereum, as well as a storage solution not just for digital currency, but for all of my documents, photos, and content.
Alternatively, rather than storing everything on a piece of paper or a standalone digital currency hardware device, you can generate a paper wallet, and then store the pdf on an encrypted (password protected) solid state drive (SSD). An SSD is almost as portable as paper, yet more secure, durable, and versatile than a standalone digital currency device.
Why Use A Paper Wallet For Cold Storage? (blockchain.info)
- Protection from malware and keyloggers.
- Maintain 100% ownership of your private keys. You own the coins not a 3rd party service.
- No dependence on the security of any website.
- Keeping a piece of paper safe is easier than keeping your computer secure.
- The paper contains everything needed to spend the coins and must be kept physically secure.
How To Setup A Paper Wallet For Cold Storage
Choose a Solid State Drive — Part 1 of 6
The Wirecutter has a review of The Best Portable Hard Drive. I went with the 500gb Samsung T3 because of it’s portability, and USB-C port which works with my phone and computer. Make sure to encrypt it with a password. Most SSDs have software that will prompt you through the password setup.
There’s also a Samsung T3 Android app to access files directly from your mobile device.
If you plan on using your SSD with a smartphone I recommend plugging your SSD into your smartphone before starting the process below. I realized that I needed to reformat my Samsung T3 in order to work with my Google Pixel phone so I had reformat my T3 (meaning everything needed to be erased and re-downloaded).
Generate a Paper Wallet — Part 2 of 6
Wallets can be generated while connected to the internet or while offline. To improve security, it is better to do so offline.
- Bitcoin: You can generate a Bitcoin wallet using bitaddress.org or downloading from GitHub and running offline by opening the bitaddress.org.html file from the project in any web browser.
Follow the instructions by moving the mouse around or typing random characters in order to generate the random key. The percentage will reach 100% once the random keys are done generating. Then select the paper wallet tab. You can adjust the number of wallets created by changing the Addresses to generate.
- Ethereum: You can generate a Ether wallet using MyEtherWallet.com or downloading from GitHub and running MyEtherWallet offline by opening index.html file from the project in any web browser.
You can generate a wallet completely offline and send transactions from the “Offline Transaction” page.
MyEtherWallet.com is now running entirely on your computer. After generating the wallet you need to click download for the Keystore File in order to press continue. However, you only need either your password, Keystore File, or private key in order to access the Ether from your wallet.
Save Wallets to a Solid State Drive (SSD) — Part 3 of 6
Once the wallets are generated select print > Open pdf in Preview if you’re using the Chrome browser on a Mac, which generates a nice PDF of your new wallet. Now you can save the wallet directly to your SSD.
Deposit Currency Into the Wallets — Part 4 of 6
- Go to whichever exchange your Bitcoin and Ethereum are stored on and send however much you want to store offline to the address on the generated wallet.
- The process is straight forward via Coinbase. Enter the Bitcoin or Ethereum address outlined in the images of the wallets above into the Recipient field below.
Confirm the Deposits — Part 5 of 6
All one needs to check the balance is the public wallet address. You can enter the address into what is called a blockchain explorer: an online block chain browser which displays the contents of individual Bitcoin blocks and transactions and the transaction histories and balances of addresses. There are many explorers out there, I like the ones below that show both the currency volume and USD values.
Note: The private key should never be shared as this exposes the wallet. The only time to use the private key is when withdrawing all of the currency.
- Bitcoin: bitinfocharts.com/bitcoin
You can bookmark your address search to easily check the value in the future.
- Ethereum: etherscan.io
Etherscan.io is great because you can create an account and have a watchlist of wallets that you’re following the value of.
Withdrawing — Part 6 of 6
The full amount of the wallet’s value should always be withdrawn because once the wallet is scanned, the private key has been exposed. This is a cumbersome process which is why cold storage is mainly intended for savings, not daily spending. For spending, hot wallets, or wallets connected to the internet like accounts with Coinbase are suitable. See Bitcoin Hot Wallet vs Cold Wallet’s article.
- Bitcoin: Using Mycelium’s Bitcoin Wallet app on Android or iOS you can scan your ‘paper’ wallet and send to any other wallet address.
a) On the on-boarding screen choose Create New.
b) Select the camera button and scan the Spend portion of the BTC wallet above. It will then show how much Bitcoin is currently on the wallet. However much you sent in step 4 should show here.
c) Select Send. Then you can scan the QR code of your Coinbase wallet for example, and the Bitcoin will return to your Coinbase account. (note: Coinbase charges a small transaction fee)
- Ethereum: In order to complete the process on my phone as I did for BTC, I plugged my SSD into my phone and opened MyEtherWallet.com and the Coinbase app. I accessed my Ethereum wallet’s private key from the SSD to unlock my wallet via MyEtherWallet. Then I copied my Coinbase account address in order to enter it into MyEtherWallet to make the transfer.
Send to your Coinbase account address for example.
Room For Improvement
- Having a web and mobile app that can generate BTC and ETH wallets and transfer currency given a scan of the wallet QR code or Private key. Currently, for Ethereum one has to type the private key into MyEtherWallet as opposed to snapping a picture of the QR code.
- Having a web and mobile blockchain explorer app that can keep track of the volume and value of both BTC and ETH addresses.
- Open API integration from services such as Intuit’s Mint or @Penny in order to display the current value of wallets held offline in one’s Mint dashboard.
Share more ideas in the comments or if you’d like to see the above solutions.
(Legal Disclaimer: I am not liable for any currency that is lost or hacked. Consult with a financial professional before making any personal finance decisions.)
I’m Adam Hurwitz — hit the green heart and check out the rest of my writing if you enjoyed the above | Thanks!