The following is a guest post by Max Skybin, author of SKYBIN.NET.
There are many ways to obtain Bitcoins. You can buy them at online exchanges, such as MtGox or CaVirtEx. You can knit socks and sell them for Bitcoins. Or you can buy a special gold coin that carries a Bitcoin balance. But how do Bitcoins get there in the first place? What is this omnipotent force that creates new Bitcoins? And who is the initial receiver of the newly minted virtual cash?
We know how the good old loonie gets created. Government prints it. Literally. They take sheets of paper (or pieces of metal) and put numbers on them. The numbers say just how much monetary value is assigned to each bill or coin. Government then distributes the money to people through banks and other financial institutions. In order for me to get my hands on some money, I need to provide a proof of entitlement, for instance a proof of work that I have done for my employer. My employer then instructs the bank to transfer money from their bank account to mine. Conventional money therefore heavily relies on government and banking system to mediate financial transactions.
By contrast, Bitcoin is a decentralized system that doesn’t rely on government, or financial institutions, or any other central authority to operate. Instead, it is run by a global distributed network of computers, each contributing a share of processing power. The network is governed by a complex mathematical algorithm that controls how many new Bitcoins get released into the wild. Today, 25 new Bitcoins get created roughly every 10 minutes. The number of new Bitcoins decreases overtime, so that somewhere around the year 2141 creation of new Bitcoins will cease. In total, there will be 21 million Bitcoins ever created. We’ll all be dead by then. Yay.
As different as Bitcoin’s distributed system is from government issued money, it still relies on a similar fundamental concept. In order to obtain Bitcoins, you must provide proof of work to the Bitcoin’s distributed system. In exchange, you get issued reward in Bitcoins. What kind of work one must do to get Bitcoins? Well, if you thought your job as an armpit sniffer would get you virtually rich, you are out of luck. Remember, in order to function, Bitcoin needs contributions of computational power of thousands of computers around the world. The process of performing complex mathematical (to be specific cryptographic) calculations to support Bitcoin network is called mining and it’s precisely the type of work that new Bitcoins are awarded for.
What exactly is mining and why is it so important for Bitcoin? The technical definition of mining is “scanning for a value that when hashed twice with SHA-256, begins with a number of zero bits.” Sounds more incomprehensible than beauty pageant babble, doesn’t it? Well, it’s actually pretty simple. Let’s look at how Bitcoin system works. You are John and you just had a brilliant idea to send 1 Bitcoin to Sally for her birthday. After all, what girl wouldn’t prefer becoming the owner of virtual money over getting a new diamond ring or a pair of shoes? In order to advise the Bitcoin network of your noble intention to perform a Bitcoin transaction with Sally, your Bitcoin wallet broadcasts it. The network waits for a certain number of transactions to appear and then bundles them together in a block. The blocks get recorded sequentially in a global ledger called the blockchain.
But before a block can be recorded in blockchain, it needs to be universally accepted as valid. This is where miners come in. All miners on the network rush in to solve or find the block, which means come up with that very special number that will uniquely identify the block on the network. Remember the number that “hashed twice with SHA-256, begins with a number of zero bits”? That’s the one.
Once the block is solved, other miners validate the solution, which in itself is a very fast mathematical calculation. The block then gets universally accepted and recorded in the blockchain. The miner who found the block gets a reward. The reward is currently set at 25 newly created Bitcoins. What do all the other miners get for their work on solving the block? Nada. Zilch. Nothing. Finding a block is a competitive game and only one lucky bastard wins. At the current price of Bitcoin hovering around $100 mark, the stakes are very high. That’s why many people invested tens of thousands of dollars in specialized mining equipment. Access to faster hardware means better chance (or higher statistical probability, in geekspeak) of solving blocks.
Because of how mining algorithm is designed, the Bitcoin blocks become increasingly hard to solve as more people mine them. The mining process requires computers to perform billions of special cryptographic calculations (such as previously mentioned SHA-256) per second to find a block. If you thought you could use that shiny new computer you just bought from Best Buy or Future Shop to solve a block, think again. At the current level of difficulty, it would take years for a general purpose PC to find even a single block.
Over the years, people have designed and used progressively faster and more efficient equipment to mine Bitcoins, from very powerful video cards to arrays of programmable chips, called FGPAs, to specially designed integrated circuits, called ASICs. They also found a way to combine computational power of computers into groups where many individual miners work together to solve blocks. This approach, called pooled mining, has become pretty much the only way to mine Bitcoins these days. Pooled mining allows folks with slower hardware compete in the block solving race by performing a fraction of overall workload necessary to find blocks. In return, they receive a share of Bitcoin rewards proportional to their contribution.
If you are like my kids, and like to whine on occasion, you might ask a somewhat obvious question: “Daddy, why does mining have to be so hard?” Well, my little ones, that’s because daddy said so! “Daddy” in this case is not yours truly, but the mysterious creator of Bitcoin protocol, known only by the pseudo name of Satoshi Nakamoto. Satoshi designed the system in such a way that it takes combined power of many thousands of computers to generate new blocks. Looking at it another way, it would be extremely hard for a single person to amass enough computational capacity to take over the creation of new blocks. If that were to happen, it would be a very bad situation as one miner could abuse the system by generating rogue blocks containing double spend transactions. It would allow John to send the same Bitcoin not only to Sally but also to Maria, Jennifer, and Helen. Whoever Satoshi Nakamoto might be, he is clearly not a proponent of such digital promiscuity.
If you want to calculate how profitable your mining will be, you need to use the following formula:
You know I am messing with you. You don’t need the formula. Just remember that mining profitability is a trade-off between your hardware’s power consumption vs. its mining speed. The speed is expressed as the number of cryptographic calculations (hashes) a mining rig can perform per second. Common notations are KH/s (kilohash per second), MH/s (megahash per second) and GH/s (gigahash per second). The faster the rig, the more Bitcoins it will yield in a given timeframe. To calculate profitability, you can simply use one of many free online calculators. I like the one at BitcoinX, because it factors in profitability decline due to rising difficulty, which allows for a more accurate prediction.
So here we are. I can’t believe you’ve actually read the whole article. It’s time for me to shed an appreciative tear and say good bye. But before I do, I’d like to make one final note. Mining can be a very exciting endeavor. In the past year, I’ve gone from CPU, to GPU, to ASIC mining and I can tell you I am hooked. To me, mining is not only about potential financial rewards. It is also about being a part of a community that can fundamentally transform the way we handle money. Make it better, faster, cheaper and more convenient for businesses and individuals. You should give mining a try someday. It will make you a better person. Also, you will become irresistibly attractive to the opposite (or the same) gender. Seriously, I promise.