Once upon a time, Bitcoins used to be mined by PCs
running Windows. Maybe that’s how the creators of it originally intended it to be. Now, Bitcoin mining has been completely taken over by expensive, specialized hardware. And those seeking to mine Bitcoins through the PC are repeatedly warned that its not worth the effort, and that even entertaining such thoughts is a sinful abomination. But lets just say you want to do so for the sake of learning about the Bitcoin ecosystem, and maybe understanding how Bitcoin mining originally worked. Or maybe you want to see firsthand, the limitations of your PC hardware and how it stacks up to specialized Bitcoin mining hardware. Keep reading.
How Bitcoin Mining was intended to work
The original creators of Bitcoin intended that your PC mine bitcoins, as a reward for being a node in the decentralized, peer-to-peer Bitcoin network. You would also create your Bitcoin wallet locally on your computer, and it would store your Bitcoins on your local drive. As a node, you would be downloading, updating and distributing a ledger that contains all the Bitcoin transactions since the beginning of Time (known as the Blockchain). To get started all you had to do is to download and run a free software application called the Bitcoin Core.
How Bitcoin Mining now works
You can still download Bitcoin Core and become a node in the Bitcoin network. But now, the Blockchain has grown to +120 GB, which means that keeping an updated version of it on your computer will require disk space. It won’t gobble all your Internet bandwidth, but you’d better not have bandwidth caps. You can also create a Bitcoin wallet locally on your computer, and this may still be safest Bitcoin wallet. But mining was removed from the Bitcoin Core on 23rd August 2016. Here is how they announced it:
As CPU mining has been useless for a long time, the internal miner has been removed in this release, and replaced with a simpler implementation for the test framework.
Couldn’t they have just left it in there? The good times are not coming back. Everyone claims Bitcoin Mining is just evolving as intended, and is now at the mercy of market forces. But again, a small school of thought insists that the original Creators of the Bitcoin would be apprehensive (or may be alarmed) about the lack of decentralization in the current mining scheme.
The requirement of expensive mining devices which consume lots of electricity and gratuitous Internet bandwidth means that entire countries have now been sidelined from the mining race. Many websites now recommend buying Bitcoins from an exchange rather than even bothering to mine them at all. Just like gold, Bitcoin was programmed to get harder and even harder to mine as more of it was obtained. And there is a finite number (21 million) of the total quantity of Bitcoins that can ever be mined. And this has triggered an arms race of mining hardware, which keeps getting better every month.
Get a Bitcoin Wallet
Since Bitcoin Core won’t let us mine, downloading it for mining is useless. You can still use it to create a Bitcoin wallet. But that means turning your computer into a node. So lets just get a free online wallet from a middleman. I recommend Blockchain (No affiliation to the official Bitcoin Blockchain) as one of the oldest online wallet services out there.
Get a Bitcoin Address
Log in to your Wallet and note your Bitcoin address, or create some new ones and note them. I won’t tell you how. A Bitcoin Address looks like this:
Download and Install GUIMiner
There is another substitute called CGMiner, but it is fairly complicated to install. GUIMiner is as easy as it gets. But lacks documentation.
Join a Mining Pool (Or maybe not)
When people started mining Bitcoins, there was no such thing as mining pools. Simply put, mining pools are middlemen who organize computational resources from different
individuals machines across the globe, and unleash this combined computational output at specific portions of the mine. They insist that this increases the odds of striking gold Bitcoin, making outcomes more predictable. But many pool operators have been accused of cheating their members of proceeds. And there is also a school of thought that claims that mining without a pool (solo mining) actually increases the odds of striking Bitcoins.
The problem for us is that while most Mining pools will welcome you for free, they hate n00bs and their PCs/GPUs. Consider this message in the Help section of Slushpool, one of the foremost Bitcoin Mining Communities:
Do not even try mining without an ASIC miner. Neither your CPU/GPU nor your Smart phone is sufficient for mining anymore. It is considered dead and unprofitable due to low efficiency (hash rate vs. power consumption).
Similarly, Bitminter, the oldest Bitcoin mining communities has this disdainful message for us:
ASICs took over in 2013. Mining one bitcoin with just a PC now takes millions of years. You’ll want a 1 TH/s or faster ASIC machine to start a small mining-at-home operation.
With such levels of disdain, it is fair to assume that they can automatically detect CPU/GPU miners based on their low hash rate and shut them down, or maybe keep them hanging. I did feel that is the case, as Bitminter would not operate with GUIMiner.
Solo Mining with Ckpool
As mentioned before, Solo Mining was the way Bitcoin was supposed to be mined. The problem is that this involved downloading the entire blockchain using Bitcoin Core and setting up Solo Mining. Thanks to Ckpool, we can sidestep all of that, and get started even without registration. All you need to begin is your Bitcoin address. And yes, your PC/GPU is welcome. Ckpool explicitly tells us that it is suitable for “Miners with old/inefficient miners that will never earn any rewards through regular mining that wish to leave it mining as a lottery.” Should you indeed strike Bitcoin, Ckpool will take 1%. This is not a scam. They actually have live stats. And you can even enter your Bitcoin address (after you start mining) to verify things. Interestingly, Ckpool is created/operated by Con Kolivas, the creator of CGMiner which we mentioned before. Too bad it is not as easy to configure as GUIMiner.
When you open up GUIMiner for the first time, it will simply go to the tray. Click the icon, and you will be greeted with a Default Screen waiting to be configured.
- For Server, select Other from the Drop Down List.
- For Host, type solo.ckpool.org
- For username, enter your Bitcoin address.
- For Device, your CPU must be listed. Below that, you get to choose which cores to use for mining if it is a Dual Core processor. You can select both. If you also have a Graphics card (GPU), it will also be listed in the drop-down menu. Leave it for now.
- For port, type 3333
- For password, type 123
- Leave Extra Flags Blank.
- Click Start Mining.
You have begun mining with your CPU!
If your GPU was also listed in the drop-down menu, lets put it to work as well. Click File>New Miner>OpenCL Miner. Type a name such as GPU. Repeat the above steps, but for Step 4, select your GPU in the drop-down list. And start mining.
Remember to Click File>Save Settings.
You will have to restart the app every time you turn on the computer. It is too buggy to do it all by itself.
Install a Hardware Monitor
The Internet has probably scared you that attempting to Mine Bitcoins on PC will melt your chip like 9/11. So why not download a hardware monitor just to keep an eye on things, such as the temperature of your CPU and GPU?
Is it Really Mining?
The easiest way to find out is to revisit the application after a few hours. Click View>Show Summary. If it shows that your piecemeal shares of required mining work were not only submitted but also accepted, you are mining Bitcoin!
In my case, the two CPU Cores, with a combined rate of 1.5Mhash/s successfully mined and submitted 5 piecemeal shares, and all five of them were accepted. This was after a just an hour of keeping the thing running. While the GPU gave a higher rate of 8.7Mhash/s, for some mysterious reason, no shares were mined and/or accepted.
Obviously, no Bitcoins were struck, as no amounts were remitted to my wallet.
This is a decade old 32 bit computer, with an Intel Pentium Dual Core Processor (CPU E2200 @ 2.20GHz, 2200 Mhz, 2 Cores). The GPU is a 2010 fanless ATI Radeon HD 5450.
The hardware monitor showed no significant spikes in temperature. But both the Processors and the GPU were revealed to be working at 100% of their capacity.
Putting things in Perspective
The power to mine Bitcoins is dependent on the hash rate of the hardware. To quote,
Hash (Rate)A hash is the output of a hash function and, as it relates to Bitcoin, the Hash Rate is the speed at which a compute is completing an operation in the Bitcoin code. A higher hash rate is better when mining as it increases your opportunity of finding the next block and receiving the reward.
1 kH/s is 1,000 hashes per second (sometimes mistakenly written KH/s).
1 MH/s is 1,000,000 hashes per second.
1 GH/s is 1,000,000,000 hashes per second.
1 TH/s is 1,000,000,000,000 hashes per second.
1 PH/s is 1,000,000,000,000,000 hashes per second.
At best I was mining at a combined hash rate of 10.2 Mh/s. That is 10.2 Million hashes per second. Or 10200000 hashes per second. Whereas the professional grade Antminer S9 has a hash rate of 14 Th/s. That is 14 trillion hashes per second, or 14000000000000 hashes per second. Note that the Antminer S9 costs US$1310 and consumes as much electricity as a portable heater. Here’s how they compare:
Lets leave CPU mining at that. But it is good to hear that solo mining is making a comeback with Ckpool. It may be more luck-driven than the predictable returns of pool-based mining. But wasn’t that how it was supposed to be?
Some suggest that CPU/GPU mining may find a new life in newly emerging crypto-currencies. I have no faith in any of these. Should you choose to go down this route, be sure to exchange your proceeds (if any) for Bitcoin as soon as you can.