https://docs.google.com/document/d/1P_n8UhxcIP5zuJn7iwQIoJuu2xFSPgsiocWDdrk9LyU/edit?usp=sharingHere's a copy-paste of the text, go to the Google Doc above for proper formatting:--------------------------------------------------------------------------
Getting Started With a Bitcoin Wallet in Linux
2013-12-22
Operating Systems
So you want to run your own Bitcoin wallet so that you can store and manage your private keys yourself, without trusting web wallets like Coinbase or Blockchain.info. First things first, what operating system to use:
• Windows, Linux, or Mac? I don’t have a Mac and I’m not into Hackintoshes, so …
• Windows advantages over Linux:
o You likely already know how to use it.
o You might already own a license to use it.
o Most programs run on it.
o Microsoft Office doesn’t run on Linux (Word, Excel, PowerPoint); however most versions of Linux come with free alternatives.
o Apple iTunes doesn’t run on Linux.
iPhones are not Bitcoin friendly anyway, so if you’re into Bitcoin enough to run your own wallet program, you likely don’t have a need for iTunes.
o Most PC games run only on Windows, but this is changing as Steam is increasing Linux support.
• Linux advantages over Windows:
o It costs no money to use
o There is no license to lose
o Updates cost no money
o It is much more secure than Windows
This is especially important if you are using Windows XP, as official support for XP ends on 2014-4, which means that on 2014-4, Windows XP will become an extremely unsafe operating system to use.
o It is faster than Windows
o More freedom to tinker than Windows
Apps vs. Applications vs. Programs: They're interchangeable words for the same thing.
There are many kinds of Linux you can run. These different kinds are called distributions, or "distros" for short. Ubuntu is the most popular and because of it, several applications are written to work best on the Ubuntu distro. If you ever come across the word “Debian”, know that it is a core Linux distro and Ubuntu is based off of it. Ubuntu adds features and programs to Debian. There are other distros based off of Debian.
• I like Lubuntu, which is a modified Ubuntu that is fully compatible when it comes to programs, but drops some of the eye-candy of the Ubuntu interface in favor of lower resource usage. On older and slower computers, Lubuntu is much faster than Ubuntu.
The "terminal" in Linux is like the "Command Prompt" in Windows. Both allow you to type out commands.
Defining the terminal commands:
• cd = change directory to ____
• sudo = request root (administrative) privilege to run this command
• dpkg -i = install package
• apt-get = same as dpkg -i, but will
o automatically search the internet for necessary dependencies,
o download those dependencies
o install those dependencies.
• pip install = similar to dpkg -i, but is a different way to install, using python-pip
o Python is a programming language, like C++, Java, Pearl, etc.
Wallet Programs
Bitcoin wallet programs. From newbies to ordinary users, I recommend Electrum. For advanced users, I recommend Armory. I personally use Armory and have written this tutorial after setting up a PC for a friend with a fresh install of Lubuntu and Electrum.
• Electrum website:
http://electrum.org/index.html • Armory website:
https://bitcoinarmory.com/Installing Electrum & Explaining Features
How to install Electrum within Lubuntu 13.10:
• Install Lubuntu 13.10 (
http://www.lubuntu.net/)
• Connect to a wifi or wired network
• Click on the Start button > System Tools > Software Updater
• Download and install updates
• Forced reboot
• Click on the Start button > Accessories > LXTerminal (alternately, Ctrl+Alt+T)
• sudo apt-get install python-qt4 python-pip python-slowaes
• sudo pip install
http://download.electrum.org/Electrum-1.9.6.tar.gz#md5=0d92d137ba26136f3908f2bf50271fe3 o You can confirm that these commands are legit because they come from Electrum's official site:
http://electrum.org/download.html • Open Electrum
• Create wallet. Before proceeding, let's explain what's in a wallet.
o A wallet is a file (not a folder, a single file) that contains within it all of the following:
Private Addresses (applies to all Bitcoin programs)
Public Addresses (applies to all Bitcoin programs)
• Public and private addresses are created in pairs. The public address is how you receive money and view your balance, while private addresses are how you prove that balance is yours and how you send money.
Wallet Generation Seed (also called a "Master Private Key" and is currently unique to Electrum and Armory)
• This determines your future private addresses
Master Public Key (unique to Electrum and Armory)
• This determines your future public addresses
o Non-deterministic wallets (all those other than Electrum and Armory) do not use Master Private Keys and Master Public Keys because their private and public addresses are generated at random.
Deterministic Wallet vs Random Wallet
• Advantages of Deterministic Wallet:
o Once a backup is made of the wallet, that backup is good for eternity.
With random wallets, you have to make new backups after generating so many addresses, because each address is random and therefore new
o Online/Offline wallet split is possible (explained later), which is a very secure way to keep your money
• Disadvantages of Deterministic Wallet:
o If someone gains access to your Master Public Key, they can view all of the public addresses in that wallet.
o If someone gains access to your Master Private Key, they can view all of the private addresses in that wallet.
• Electrum creates a "wallet generation seed", which determines all of your future private and public addresses.
o Later, when using the program, this is just called "seed".
• Seed: Is it better to store/remember the seed or the wallet file? Again, the seed is stored within the wallet.
o Features of the seed:
It is randomly generated, so unlike a manually generated password, it is extremely secure against brute-force cracking.
You can type your seed into ANY PC's installation of Electrum and have immediate access to your funds. It does not require any physical back-ups.
The seed works only with Electrum, so that narrows the scope of hacking opportunities.
o Downsides to the seed:
It is unencrypted. So if anyone else gains access to these 12 words, they have FULL access to your money.
It is not tied to a physical file, so all someone needs to know is those 12 words and they have full access to your money.
• The wallet, however, requires someone to have a copy of that specific wallet in addition to your manually generated password in order to access your money.
A seed is proprietary to Electrum
A wallet file is compatible with all wallet applications (Bitcoin-Qt, Armory, MultiBit, Electrum, etc.) whereas a seed is proprietary to Electrum (I don't think Electrum's seeds are compatible with Armory's).
• Encrypt wallet with a password/passphrase
• Auto connect to a server
• You're now ready to use Electrum. Here are some explanations of some of its most important features, IMO:
o Note that there is a default transaction fee under Tools > Preferences. Change it if you wish.
As of 2013-12, a zero-fee will usually transmit, but if the sending amount is very small or if the network is heavily loaded, your transaction might not get confirmed for up to several hours due to paid-fee transactions taking priority.
The purpose of the voluntary transaction fee is to increase the priority of processing for your transaction - confirmation will happen faster with a fee.
o Wallet > Master Public Key
This is a key that generates all of your public addresses. Do not share if you don't want someone to know all of your public addresses.
The main purpose of this button is to import the key into a PC running Electrum if you want to be able to view and receive money, but not have the physical ability to send money. The full wallet containing the seed can therefore reside elsewhere, where it is more secure.
This is also used for splitting your wallet into an "online" wallet and an "offline" wallet.
• Online wallet can view balances, receive funds, and initiate a sending transaction, but a sending transaction must be confirmed by the "offline" wallet.
o File > Save a Copy
This allows you to save a copy of your encrypted wallet.
You can save this to several locations without worry, as no one can open it without your manually created password.
• E-mail a copy of the wallet to yourself. Put it on Google Drive and DropBox. Keep it on an external drive.
• Happy Bitcoin’ing