Crypto wallet security: hashed password, memberable seed

in #security8 years ago (edited)

Remember this, though, Linux is very secure, but not entirely secure. See why Linux? Nothing is impossible in computer world. For everyday crypto usage, best practices include, but not limited to:

  • Use a Linux distro (in a dedicated PC or disk drive) only for cryptos.
  • Encrypt the disk-drive (using LUKS, for example); both encryption and user login password need to be strong. Finish disk encryption during the OS installation. You will be asked during installation process. I once tried encrypting disk after installing OS; my experience wasn't pleasant.
  • Install only wallet applications; install no other apps.
  • Use hashed password for all your accounts; Choose an easy-to-remember phrase and modify slightly depending on website/account. For example, your phrase is this$is$unhackable. Now add to this a few characters depending on account type like this$is$unhackable$BTC for BTC,this$is$unhackable$STEEM for Steem, etc. Now, hash the whole phrase. On Linux, run the command: user@userpc:~$ echo -n this$is$unhackable$BTC | md5sum. Here, the -noption suppresses new line, \n, after input string this$is$unhackable$BTC that [echo][7] utility returns after displaying a string. The command returns 9e925e9341b490bfd3b4c4ca3b0c1ef2, which is going to be your BTC password. You can use sha1sum or sha256sum or many other hashing algorithms for longer password. You might want to write passwords to a file and PGP encrypt that file. Windows users, download Microsoft File Checksum Integrity Verifier. Here is detailed instruction.
  • Use an offline wallet to store large amount of coins (your savings account). Install a fresh operating system; don't connect to the Internet. Send your coins to that offline wallet. Remember though, putting all eggs in one basket isn't a good idea. Have your currencies spread in different wallets and addresses; back them up properly and sufficiently. That way, all is not lost if something bad happens.
  • Consider getting a hardware wallet for everyday use.

Create a BTC wallet using a memorable 12 word seed

When creating a crypto wallet, wallet application generates a random list of words - which is called seed - to create the private key. We're used to store that random list of words or seed in computer or on paper. But it's hard to remember in head. Wouldn't it be nice to create your own seed? I have just created a wallet with the below 12 word seed:

life is not about finding yourself but life is about creating yourself

I could've used, for example, one two three ... ... twelve. But remember that a seed should be easy to remember for the creator but difficult or near impossible for outsiders. Here's how I did it using Electrum BTC wallet:

  1. Click File > New/Restore and type in wallet name; I chose test-wallet
  2. Choose Standard Wallet
  3. Select I already have a seed
  4. Paste seed in the textbox and click on Options
  5. In the popup window, check BIP39 seed
  6. Leave the next field's value to 0
  7. Type a password to encrypt wallet file
    <
  8. Done!

Send a small amount of crypto to this account. Create the same private wallet address in another PC by following the same steps. This ensures you can recover wallet anytime, anywhere; and you're good to send big amount of coins. Hope this helps. Happy Steeming!

Sort:  

Very nice tutorial. Thank you!

NP. I hope others find it useful.