Electrum

From Bitcoin.com Wiki
Revision as of 23:30, 11 November 2016 by Davids (talk)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
400px

Electrum is a lightweight Bitcoin client, based on a client-server protocol. It was released on november 5, 2011.

Main features:

  • Encrypted wallet: the file that contains your bitcoins is protected with a password. You are protected from thieves.
  • Deterministic key generation: If you lose your wallet, you can recover it from its seed. You are protected from your own mistakes.
  • Instant on: the client does not download the blockchain, it requests that information from a server. No delays, always up-to-date.
  • Transactions are signed locally: Your private keys are not shared with the server. You do not have to trust the server with your money.
  • Freedom and Privacy: The server does not store user accounts. You are not tied to a particular server, and the server does not need to know you. You can export your private keys.
  • No scripts: Electrum does not download any script. A compromised server cannot send you arbitrary code and steal your bitcoins.
  • No single point of failure: The server code is open source, anyone can run a server.
  • Firewall friendly: The client does not need to open a port, it simply polls the server for updates.
  • Free software: Gnu GPL v3. Anyone can audit the code.
  • Written in Python. The code is short, and easy to review.
  • Support for Bitcoin URIs, signed URIs and Bitcoin aliases

Documentation

Up to date documentation is now hosted on http://electrum.orain.org

Quick start to using Electrum for cold storage

  1. Download and burn a bootable Ubuntu LiveCD.
  2. Download Electrum to a clean USB stick.
  3. Boot to Ubuntu, run Electrum.
  4. Write down the Electrum seed, then export the Master Public Key.
  5. Reboot to your normal OS and create a new Electrum Watch-Only wallet using the Master Public Key.
  6. To spend, create unsigned transactions and sign them using the LiveCD.

Spending paper wallets with Electrum securely

This is a specific use case which is primarily useful for those who wish to spend their paper wallets without importing the private keys into a wallet that is connected to the internet. These steps assume you know how to run Electrum using a dedicated offline computer.

  1. Create your new cold wallet with an offline machine.
  2. Import your paper wallet private keys.
  3. Save out the Master Public Key from Electrum.
  4. Enter the Master Public Key into your online version of Electrum, thereby creating a watch-only wallet.
  5. Import your paper wallet public address. This part's a little tricky because the UI doesn't import public addresses properly. :(
    1. Quit Electrum. Make a backup of the wallet file and open it in a text editor.
    2. Find where it says 'mpk': 'your_master_public_key'}},
    3. Enter your public addresses after that text as follows: 'imported_keys': {'1your_public_key_one': '', '1your_public_key_two': '', '1your_public_key_three': ''},
    4. Note, the empty apostrophes after the colons are where your private keys would go IF you were importing them, but you're not.
  6. Open the wallet again with Electrum. You should see your imported addresses and balances.
  7. Create a new unsigned transaction.
  8. Enter the destination address, then enter '!' in the amount to send the entire amount minus fee.
  9. Save the transaction to a file. Move it to the offline computer.
  10. Open the unsigned transaction in the offline version of Electrum. Sign it and save it.
  11. Finally, bring it back to the online machine and use Electrum or Blockchain.info to broadcast it.
  12. Remember that imported private keys are NOT protected by Electrum's 12 word deterministic seed! You still need to keep your paper backups.

This method is nice because it combines your cold storage Electrum seed's along with yourpaper wallets, resulting in a cold wallet containing all private keys for signing transactions, and a watch-only version for monitoring balances, creating and managing transactions, and exporting .CSVs for bookkeeping.

History

Electrum was announced November 5, 2011[1].

See Also

External Links

References