Thursday, October 18, 2012

Generating Bitcoins

Bitcoin Mining

Bitcoin is a digital currency. If you have a minute, check out this video:

Did that mean anything to you? The important things are:
  • Bitcoins are being exchanged for goods, and
  • people are exchanging dollars (and other currency) for Bitcoins.

Generating Bitcoins

One key to the Bitcoin currency is the limited and predictable rate at which coins are added to the system (see 0:33-0:43 in the video). This control is achieved by tying the generation of one block (50 units) of Bitcoins to the solving of a computationally difficult problem: solve the problem, get a block of Bitcoins. The distributed Bitcoin network adjusts the difficulty of this problem after every 2016 blocks of Bitcoins are generated. The difficulty is adjusted so that on average, 6 blocks of Bitcoins (300 units) are generated every hour by users around the world. The incentive to devoting your computer’s power and time to solving the difficult computational problem is that the user whose computer solves the problem gets awarded that block of 50 Bitcoins.
For more detail about the computational problem, read the Bitcoin white paper. It’s generally equivalent to finding a number that hashes (using SHA-256) to a value that is less than a particular 256-bit target. Adjusting that target value is how the distributed Bitcoin network adjusts the difficulty of block generation. Moving the target lower makes for a more difficult computational problem: it will take more random tries to find a value whose hash is less than the target.
One more detail. Every 210,000 blocks, the Bitcoin reward per block is cut in half. Right now, the payout is 50 Bitcoins per block. Sometime soon, the payout will halve to 25 Bitcoins per block.

Bitcoin mining

So, people are paying dollars for Bitcoins, and you can use your computer for a chance of being awarded Bitcoins. Can you make money off of this? Right now, I think the answer is yes, but it depends on your situation and how you approach the problem.
Remember that the computational problem is basically finding a number whose SHA-256 hash is less than the current target value. You need a machine that can do this operation very quickly, and repeatedly. Right now (May 24, 2011), the difficulty level is set such that it will take on average 1,048,471,150,000,000 hash attempts before finding one that wins you a block (50 units) of Bitcoins (that’s over 1 quadrillion attempts… I had to look that up). Your CPU power will be able to do around 2-10 million hashes per second. That means, if conditions stayed exactly as they are now, it would take your CPU about 3-10 years to win a Bitcoin block. People are not using CPUs to mine for Bitcoins.
The only way you will have any hope at being awarded a block of Bitcoins is to use the computing power of a GPU (graphics processing unit). Originally used for manipulating computer graphics, today, GPUs are being used for general parallel processing tasks. It happens that the hashing required for Bitcoin generation is a perfect fit for a GPU. Top-of-the-line ATI GPUs can do 270-360 million hashes per second (compare that to the 2-10 million per second that a CPU can do). Still, that takes about 33-45 days to win a Bitcoin block and the difficulty could be increased during that time period. (Note: Nvidia GPUs are not as well suited to this problem, giving only up to 140 million hashes per second.)
A popular alternative to mining individually is to join a Bitcoin mining pool. A mining pool is a group that has collectively agreed to work on Bitcoin generation to increase the probability of being awarded a block of 50 Bitcoins. An example is here: As of May 24, 2011, this pool has about 4300 worker machines (including mine). This results in a combined 430 billion hashes per second. This pool is awarded a block every 40 minutes on average. The block of 50 Bitcoins is distributed between the 4300 workers according to how much work each of them did during the search. My machine, doing 270 million hashes per second, gets about 0.02-0.04 Bitcoins from each block that is awarded. Pooled mining allows you to bring in Bitcoins slowly over time, rather than waiting for weeks for an individual return of 50 Bitcoins.

Is it worth it?

There are a lot of assumptions that go into answering this question. How much does power cost where you live? How many Bitcoins can you gain per day? What will people pay for Bitcoins when you’re ready to sell them?
If you live in Canada, you’re in luck. Canada has the cheapest power in the world. In British Columbia, Canada, the rate is $0.0627/kWh. A 500W machine will draw 360 kWh in one month, or $22.57. In the US, you could be paying anywhere from $0.09-0.20/kWh. Power in some European countries is as high as $0.30/kWh.
Generation rate
I’ll assume that you have or will buy a top-of-the-line card. So, let’s use the low end of that range: 270 Mh/s (megahashes/second). As mentioned before, at the current difficulty level, this gives a 50 Bitcoin block every 45 days. If you’re doing pooled mining, the amortized rate should work out to about the same (around 1.1 Bitcoins per day) To work this out for different difficulty levels or your own hardware, check this out:
How much will people pay?
This is the most uncertain of all the assumptions. gives current data on Bitcoin prices in USD, GBP, and EUR. The prices have averaged around 6.5-7 USD per Bitcoin, but that is a very recent spike. Over the past 30 days, the average is 4.80 USD per Bitcoin.
A chart showing the Bitcoin market over the past few months.
Volume (in USD) on the left axis. USD per BTC on the right axis. Bars show volume, box and whiskers show daily values, 25-75 percentiles, and high/low.

From these assumptions, one should be able to net about $90-$100/month if you live in Canada. This will decrease as the difficulty increases, but that’s a good starting point. Even if you have to buy new hardware for this, good graphics cards hold resale value that you can reclaim once you’re done with your mining.
One interesting point about profitability… as prices rise to make Bitcoin mining profitable, more people will join the mining population, driving up the difficulty and production costs, reducing the profitability. On average, Bitcoin mining should not be profitable. Access to cheap power makes the difference. You’ll be on the winning side of average.


  1. If you are searching for the ultimate Bitcoin exchange company, then you should pick CoinMama.

  2. Get daily suggestions and guides for earning THOUSANDS OF DOLLARS per day FROM HOME for FREE.

  3. Did you know you can create short links with AdFly and get cash for every click on your shortened urls.

  4. On Free Bitcoin you can get faucet satoshis. Up to 22 satoshis every 5 minutes.

  5. Over at Moon Bitcoin you can get faucet bitcoins. 514 satoshi every 24 hours.

  6. The best site shot I have ever seen and I'm amazed at it is this one:

    Buy Bitcoin with credit card instantly

    It pays 1000-4000 satoshis every 10 minutes. I can not believe !!! Today only half a day in here got 45000 satoshis !!!
    The redemption can only be made when the amount reaching 0.012 bitcoins :)


  7. Did you ever try to automate your free bitcoin claims with a BTC FAUCET ROTATOR?

  8. eToro is the ultimate forex broker for newbie and full-time traders.

  9. Easy CRYPTO multicurrency mining application & 1-click graphic miner.

    Mine effectively with your computer or smartphone. Download MINERGATE.

  10. BitKONG is a verifiably fair online bitcoin game.

    TIP: Claim free bitcoins every 10 minutes from the btc faucet.

  11. If you are looking to BUY bitcoins online, Paxful is the #1 source for bitcoins as it allows buying bitcoins by 100's of different payment methods, such as Western Union, MoneyGram, PayPal, Visa, MasterCard, American Express and even exchanging your gift cards for bitcoins.

  12. Quantum Binary Signals

    Get professional trading signals delivered to your cell phone every day.

    Start following our signals NOW and gain up to 270% per day.