Table of Contents:
Are bitcoin and Ethereum anonymous?
The short answer is no. All transactions on the blockchain are public. Although your name is not associated to your account number(s), transactions can be traced using IP addresses and timing analysis. Many people think they are totally anonymous using cryptocurrency, but let me remind you that there are lots of people got who caught doing bad things with cryptocurrency. So don’t do anything you wouldn’t want the world to see! Remember, transactions are recorded on the blockchain forever.
Many people are confused about “where” the digital currency is stored. Well, it’s stored everywhere – on every computer that has a copy of the ledger. That’s what the blockchain is, it’s a distributed ledger that is verified using cryptographic functions. You move bitcoins or Ether from one account to another account by signing a transaction with your private keys.
The blockchain ledger is public. It’s balances and account numbers are available for all to see. You can browse the bitcoin blockchain using a tool like blockexplorer.info.
You can browse through the ledger and see who is a millionaire!
You can see the balances, but you can’t touch them. You would need the private keys to do that. So the private keys are what you are really protecting.
The bitcoins and Ether are just numbers on a ledger – they aren’t actually stored in any one place!
Video: Blockchain explained
As long as you have the private key and the account number, you can spend the money in the account. The private key is a long string of numbers and letters. You can print it out, you can memorize it, and you can even turn it into a QR code that you can scan.
The trick is that the private key’s letters and numbers add up to a specific value called a hash – which only matches up to one account. It’s a key that only opens one specific lock. If a key opens more than one lock, this is called a cryptographic collision and it means the hashing function is insecure. Recently the SHA1 hash was proven to be insecure.
Video: A bit more technical explanation of bitcoin
How to get started mining cryptocurrency:
If you still want to mine using your CPU or GPU, this is the quickest way to start. You’ll need a bitcoin address to receive your funds.
Step 1) Sign up for a free account on coinbase to receive your mined bitcoin or Ethereum.
Step 2) The quickest way to get started mining is by downloading the program nicehash. Click on learn more under SELL. Then click “I want to earn with my CPU or GPU”. Next click the green download button. Install all the programs. Your antivirus might freak out, because you are installing serious mining software. I had to put an exception in my antivirus software. To understand when you’ll see a balance in your Coinbase account, read this page.
Update: Nicehash got hacked. I hope you didn’t lose any money 🙁 Read below on how to keep your crypto in cold storage
New Update: Nicehash is back. Use at your own risk, but I do believe their software is good. The risk with Nicehash is that if they get hacked again and you in between your payouts, you would lose whatever they were holding.
The Ethereum hashing function (dagger-hashimoto) is a “memory hard” hashing algorithm, which means it takes a lot of GPU memory. The minimum at the time of writing is a 3Gb card, and this requirement will continue climbing.
With my 2gb card, I wasn’t going to be mining Ethereum. I could still mine bitcoin or other coins if I wanted to though, then convert them to Ether! As I mentioned above, mining is going to go away because it’s bad for the environment and useless now. The bitcoin network uses so much electricity and computing power for what? Calculating hashes? That computing power could be put to better use in my opinion. There are projects like CureCoin and FoldingCoin that use computing power to actually do something useful!
How to keep your Ethereum secure:
When you use an online wallet like coinbase or myetherwallet, the private keys are stored on their servers. It’s great to create an account in a pinch, but do you really want to store your private keys “in the cloud” ?
You can create a wallet on coinbase or myetherwallet, then send your money to an address you control on your computer using a local wallet like Mist or Parity. This ensures that you are the only one with a copy of the private keys.
Pro tip: Enable 2fa on coinbase, and be sure to export your private keys – otherwise you could get locked out. This nearly happened to me and I almost lost 1 Ether!
I tried both Mist and Parity. I liked Parity’s interface but I lost faith in the company after the latest parity wallet hack. I recommend using Mist because it’s the Ethereum foundation’s official wallet software.
Instructions for printing a secure Ethereum paper wallet:
1) Download the My Ether Wallet offline package from here: https://github.com/kvhnuke/etherwallet/releases/tag/v220.127.116.11
2) The package contains an offline version of the my ether wallet software. It’s just an HTML file that you’ll open in a browser. Run this on a computer that isn’t connected to the internet. If you’re extra paranoid, boot up using a secure live CD. Once you have your paper wallet you can simply print it. Be careful though, some printers hold a memory.
Moving your funds to an offline wallet is known as cold storage. Once you have your funds moved to cold storage, you must never send any online transactions from this account. If you make an online transaction using the cold storage wallet, the private key will potentially be exposed. Instructions for signing your transactions offline can be found here.
You can just as easily use a USB stick for your cold storage. Remember though, USB sticks can be erased accidentally by strong magnetic fields such as an EMP. To store your keys on a USB stick, you will export a JSON file from your wallet software. If you have a coinbase account or a wallet like Parity or Mist, you can export the private keys in JSON format. The keys will be encrypted using AES 128. Storing your keys this way requires a password. The password will be used to encrypt the private key, that way even if the USB stick is stolen it will be useless without the password.
So let’s say your USB stick containing your private keys in JSON format gets stolen. What do you do?
You would be wise to keep backups of the private keys in different locations. For example, you could make an extra copy of the JSON file and burn it to a CD and hide it in the ceiling tiles at your parents house. As long as you remember the password to unlock the JSON file, you will be able to recover your bitcoins or Ether.
A skilled attacker who steals your USB key may try to attempt to brute force the password using software. There are even some services online that offer to crack wallets for you. While the attacker is busy trying every combination of password to get your keys, you can simply retrieve the backup CD at your parents’ house, load up the JSON file into a wallet software, and move the funds to a new account that only you control!
You can also have your encrypted keys etched into metal for the ultimate cold storage!
How I bought my first Ether:
I decided to buy some Ether on coinbase. The process was straight forward. I was then able to transfer some it to my local wallet. So now, I had my Ether split up in 2 accounts.
Easy way to get started trading cryptocurrencies:
In order to keep this first article simple, I moved the trading section to it’s own post and then I wrote a complete article on trading cryptocurrencies here.
What is a Smart Contract and How Does it Work?
The biggest difference between bitcoin and Ethereum is the interactive nature of Ethereum. Ethereum has a programming language called solidity built-in. Let me give you an example of a smart contract so that you understand how Ethereum is very different. A contract on Ethereum is nothing more than an account number (address) and the computer program to execute. A contract called Eth Hodler (It’s misspelled on purpose) allows you to store your Ether and hold it there. If you withdraw your Ether early, you will be fined 1% which goes into a pool. Those who keep their Ether in this contract long enough are eligible to receive the 1% payout. Sounds good, right?
So how do you know if it’s fair? That’s the beauty of smart contracts and the blockchain.
You can view the contract code anytime because it’s open for all to see. The contracts can’t be changed – they are immutable. You can see exactly what the computer code is doing (as long as you understand it). Some contracts are badly programmed and have security bugs which lead to hacks and stolen funds. That’s why it’s important to have your contract code audited by a competent third party.
Video: Ethereum is a planetary scale computer
What is a token and what is an ICO?
Tokens are essentially shares. Since anyone can launch an ICO, it’s very risky and you will need to do your homework before investing. A token can represent a physical object. An example of this type of token would be the Farad cryptoken (https://farad.energy). Tokens can also be completely useless, or simply a form of digital memorabilia such as the unicorn token. Because the blockchain is public, you can see how many accounts are holding unicorn tokens on etherscan.io
A token can also be used to enable functions. For example, Ether Party tokens (FUEL) can be used to deploy tokens and smart contracts.
Create Your Own Crypto Currency (Cryptoken)
There are many ways to create your own tokens on the Ethereum blockchain.
– Token factory (Require metamask installed)
– Using a 3rd party service such as Etherparty.io (Still in beta) or Minereum.
– Using the Parity or Mist wallet software
You can also deploy your own smart contracts and mint your own tokens manually if you want. It’s incredibly easy to create a simple token using the Parity wallet software. However… None of these automatic token creation methods support the advanced token features.
You will need to write your own code if you want to use the advanced token functions such as burn, freeze and transfer ownership. These functions allow you to destroy tokens, freeze and unfreeze accounts that are using your tokens, as well as transfer the ownership of the token creation contract to someone else. The full code to create your own token is located here.
With Ethereum and smart contracts, code is law. Multi signature wallet and accounts are another example of smart contracts. With this feature, funds cannot be transferred unless all parties agree. It’s also possible to vote on the outcome of a transfer. If the vote doesn’t pass with a majority, the funds won’t be transferred. Escrow contracts are especially interesting using this technology.
Now that you know a little bit more about ICOs and tokens, let’s put them together to create a crowd funding ICO with a smart contract. This allows a company to raise funds, but if the minimum cap isn’t reached, all investors are automatically refunded. Investors can have a sense of security because they can simply read the smart contract code. The auto refund feature must be coded into the contract. Many ICOs do not have this feature and once you buy their tokens, you may be stuck with them forever.
Tokens are meant to be transferable – that’s one of their biggest features. This is where escrow services become very useful. There are also cryptocurrency exchanges that allow you to buy and sell your tokens.
Here are some interesting ICOs and altcoins I looked at:
Environmentally conscious projects:
Smart contract creation interface:
FUEL – https://etherparty.io
Real estate and P2P rentals:
ATL – https://atlant.io/
Capacitors and energy:
FRD – https://farad.energy
Genetic information sales:
ZNA – https://zenome.io
If you want to see more ICOs you can check out https://ico-list.com
I haven’t participated in any ICOs yet. I would much rather hold Ether (ETH). All cryptokens require ETH to function, and so I’d rather hold onto the Ether itself.
What is Gas in Ethereum?
All transactions on the Ethereum network require some amount of Ether to process. The computing power required is measured in “gas” and converted to Ether (ETH).
Each transaction on the network costs a certain amount of computing power. It might seem like simple math to transfer 20 Ether from account A to account B, but it costs a lot of computing power. This is because each transaction is cryptographically verified by the network. It’s like if you’re trying to read a word that someone wrote a piece of paper, but the paper is buried under 3 tons of mathematical equations. The word can be simple and easy to read, but you have to lift 3 tons of paper to get to it.
Each time you record data to the Ethereum blockchain, it will cost you money in the form of Ether. You can retrieve data from the Ethereum network without paying gas, such as looking up an account balance.
When you purchase tokens, you are interacting with a smart contract. Here’s an overview of the token sale process:
– You send Ether from your address (A) to the smart contract address (B).
– Address B is not just an account number, it’s the address of a smart contract. A smart contract can hold Ether just like a regular account, but there is a computer program inside the account controlling what happens to the Ether it’s holding.
– You can view the full source code of the contract, so you can see what will happen to your Ether once you send it. If you don’t understand the code, bad things could happen. Always make sure a contract has been audited by a professional.
– Once you send your Ether plus the necessary gas money to address B, the program will record your address (A) into the blockchain and assign it a number of tokens. These tokens are attached to your account number (A). An Ethereum account number can hold many types of tokens as well as Ether (ETH).
This article is continually being updated. Check back often! Some of the links in this article contain affiliate links. I do not endorse or recommend any ICOs. Buying Bitcoin, Ethereum and other cryptocurrencies carries considerable risk. Consult an investment professional. If you follow any of the instructions or links on this page you do so at your own risk!