Bitcoin mining. Explained (How it works, A Step-by-Step Guide)



The crypto-currency has staged a meteoric rise in 2017 that has attracted new investors, but, for
many, question marks still surround bitcoin and the technology behind it. Bitcoin may be the next big thing in finance, but it can be difficult for most people to understand how it works. There is a whole lot of maths and numbers involved, things which normally make a lot of people run in fear. Well, it’s one of the most complex parts of Bitcoin, but it is also the most critical to its success. The frenzied Bitcoin boom has sparked comparisons to a financial bubble, with its price soaring to more than $15,616.01 (£11662.04). But the cryptocurrency craze has also resembled something of a digital gold rush. With a finite supply of 21 million Bitcoins, tech-savvy individuals and a handful of fast-moving companies have jumped in to harvest as much of the new gold as possible, using powerful computers to hoard as much of the supply as possible.

What is bitcoin mining?

Just as gold miners produce the world’s supply of gold, so do bitcoin miners produce all the digital currency available to the market - but, naturally, it is a bit more complicated than that. Mining is the process of adding transaction records to bitcoin’s public ledger, or the blockchain. Just like the precious metal, there is only a limited amount (there will only ever be 21 million bitcoin) and the more that you take out, the more difficult and resource intensive it is to find. Apart from that, Bitcoin actually works quite differently and it’s actually quite genius once you can get your head around it. One of the major differences is that mining doesn’t necessarily create the bitcoin. Bitcoin is given to miners as a reward for validating the previous transactions. So how do they do it?
Bitcoin mining requires a computer and a special program. Miners will use this program and a lot of computer resources to compete with other miners in solving complicated mathematical problems. About every ten minutes, they will try to solve a block that has the latest transaction data in it, using cryptographic hash functions.

What are Hash Functions?

A cryptographic hash function is an essentially one-way encryption without a key. It takes an input and returns a seemingly random, but fixed length hash value.

For example, if you use Movable Type’s SHA-256 Cryptographic Hash Algorithm:
Message: How does mining work?
Hash Value: 46550fef 26f87ddd 5e15407f 45a0b8d2 9513291c 4e0f0acc 24a974de 907a1569
If you change even one letter of the original input, a completely different hash value will be returned. This randomness makes it impossible to predict what the output will be.

How Are Hash Functions Useful For Bitcoin?

Because it is practically impossible to predict the outcome of input, hash functions can be used for proof of work and validation. Bitcoin miners will compete to find an input that gives a specific hash value (a number with multiple zeros at the start). The difficulty of these puzzles is measurable. However, they cannot be cheated on. This is because there is no way to perform better than by guessing blindly.
The aim of mining is to use your computer to guess until it comes up with a hash value that is less than whatever the target may be. If you are the first to do this, then you have mined the block (normally this takes millions and billions of computer generated guesses from around the world). Whoever wins the block will get a reward of 12.5 bitcoins (as long as it becomes part of the longest blockchain). The winner doesn’t technically make the bitcoin, but the coding of the blockchain algorithm is set up to reward the person for doing the mining and thus helping to verify the blockchain. Each block is created in sequence, including the hash of the previous block. Because each block contains the hash of a prior block, it proves that it came afterward. Sometimes, two competing blocks are formed by different miners. They may contain different transactions of bitcoin spent in different places. The block with the largest total proof of work embedded within it is chosen for the blockchain. 


This works to validate transactions because it makes it incredibly difficult for someone to create an alternative block or chain of blocks. They would have to convince everyone on the network that theirs is the correct one, the one that contains sufficient proof of work. Because everyone else is also working on the ‘true’ chain, it would take a tremendous amount of CPU power to beat them. One of the biggest fears of Bitcoin is that one group may gain 51% control of the blockchain and then be able to influence it to their advantage, although thankfully this has been prevented so far.

Who Are Bitcoin Miners?

Initially, bitcoin miners were just cryptography enthusiasts. People who were interested in the project and used their spare computer power to validate the blockchain so that they could be rewarded with bitcoin. As the value of bitcoin has gone up, more people have seen mining as a potential business, investing in warehouses and hardware to mine as many bitcoin as possible.
These warehouses are generally set up in areas with low electricity prices, to further reduce their costs. With these economies of scale, it has made it more difficult for hobbyists to profit from Bitcoin mining, although there are still many who do it for fun.

Why should I mine?

By mining, you can earn cryptocurrency without h
aving to put down money for it. That said, you certainly don't have to be a miner to own crypto. You can also buy crypto using fiat currency (USD, EUR, JPY, etc); you can trade it on an exchange like Bitstamp using other crypto (example: Using Ethereum or NEO to buy Bitcoin); you even can earn it by playing video games or by publishing blogposts on platforms that pay its users in crypto. An example of the latter is Steemit, which is kind of like Medium except that users can reward bloggers by paying them in a proprietary cryptocurrency called Steem. Steem can then be traded elsewhere for Bitcoin.

In addition to lining the pockets of miners, mining serves a second and vital purpose: It is the only way to release new cryptocurrency into circulation. In other words, miners are basically "minting" currency. For example, as of the time of writing this piece, there were about 16 million Bitcoin in circulation. Aside from the coins minted via the genesis block (the very first block created by Bitcoin founder Satoshi Nakamoto himself), every single one of those Bitcoin came into being because of miners. In the absence of miners, Bitcoin would still exist and be usable, but there would never be any additional Bitcoin. There will come a time when Bitcoin mining ends; per the Bitcoin Protocol, the number of Bitcoin will be capped at 21 million

How much can a miner earn from mining Bitcoin?


Bitcoin are mined in units called "blocks." As of the time of writing, the reward for completing a block is 12.5 Bitcoin. At today's price of about $5000 per Bitcoin, this means you'd earn (12.5 x 5000)=$62,500.

When Bitcoin was first mined in 2009, mining one block would earn you 50 BTC. In 2012, this was halved to 25 BTC. in 2016, this was halved to the current level of 12.5 BTC. In 2020 or so, the reward size will be halved again to 6.25 BTC.

If you want to keep track of precisely when these halvings will occur, you can consult the Bitcoin Clock, which updates this information in real time.

How many blocks have been mined so far?

A number of sites, including Blockchain.info, will give you that information in real time. At the time of writing, we are at block # 498331.

What are miners doing that's so important that they get free Bitcoin?

Miners are getting paid for their work as auditors. They are doing the work of verifying previous Bitcoin transactions. This convention is meant to keep Bitcoin users honest, and was conceived by Bitcoin's founder, Satoshi Nakamoto. By verifying transactions, miners are helping to prevent the "double-spending problem."

Double spending means, as the name suggests, that a Bitcoin user is illicitly spending the same money twice. With physical currency, this isn't an issue: Once you hand someone a greenback $20 bill to buy a bottle of vodka, you no longer have it, so there's no danger you could use that same $20 to buy lotto tickets next door. With digital currency, however, as the Investopedia dictionary explains, "there is a risk that the holder could make a copy of the digital token and send it to a merchant or another party while retaining the original."

Let's say you had one legit $20 and one really good photocopy of that same $20. If someone were to try to spend both the real bill and the fake one, someone who took the trouble of looking at both of the bills' serial numbers would see that they were the same number, and thus one of them had to be false. What a Bitcoin miner does is analogous to that--they check transactions to make sure that users have not illegitimately tried to spend the same Bitcoin twice. This isn't a perfect analogy--we'll explain in more detail below.

Once a miner has verified 1 MB (megabyte) worth of Bitcoin transactions, they are eligible to win the 12.5 BTC. The 1 MB limit was set by Satoshi Nakamoto, and is a matter of controversy, as some miners believe the block size should be increased to accommodate more data.

Note that I said that verifying 1 MB worth of transactions makes a miner eligible to earn Bitcoin--not everyone who verifies transactions will get paid out.

1MB of transactions can theoretically be as small as 1 transaction (though this is not at all common) or several thousand. It depends on how much data the transactions take up. 

So after all that work of verifying transactions, I might still not get any Bitcoin for it?

That is correct.
In order to earn Bitcoin, you need to meet two conditions. One is a matter of effort, one is a matter of luck.

1) You have to verify ~1MB worth of transactions. This is the easy part.

2) You have to be the first miner to arrive at the right answer to a numeric problem. This process is also known as a proof of work.
What do you mean, "the right answer to a numeric problem"? 

The good news: No advanced math or computation is involved. You may have heard that miners are solving difficult mathematical problems--that's not true at all. What they're actually doing is trying to be the first miner to come up with a 64-digit hexadecimal number (a "hash") that is less than or equal to the target hash. It's basically guess work.

The bad news: Because it's guesswork, you need a lot of computing power in order to get there first. To mine successfully, you need to have a high "hash rate," which is measured in terms of megahashes per second (MH/s), gigahashes per second (GH/s), and terahashes per second (TH/s).

That is a great many hashes.

If you want to estimate how much Bitcoin you could mine with your mining rig's hash rate, the site Cryptocompare offers a helpful calculator.

What equipment do I need to mine?


Either a GPU (graphics processing unit) miner or an application-specific integrated circuit (ASIC) miner. These can run from $500 to the tens of thousands. Some miners--particularly Ethereum miners--buy individual graphics cards as a low-cost way to cobble together mining operations. The photo below is a makeshift, home-made mining machine. The graphics cards are those rectangular blocks with whirring circles. Note the sandwich twist-ties holding the graphics cards to the metal pole. This is probably not the most efficient way to mine, and as you can guess, many miners are in it as much for the fun and challenge as for the money.

The ELI5 ("Explain It Like I'm Five") version of what Bitcoin miners do

Example: I tell three friends that I'm thinking of a number between 1 and 100, and I write that number on a piece of paper and seal it in an envelope. My friends don't have to guess the exact number, they just have to be the first person to guess any number that is less than or equal to the number I am thinking of. And there is no limit to how many guesses they get.

Let's say I'm thinking of the number 19. If Friend A guesses 21, they lose because 21>19. If Friend B guesses 16 and Friend C guesses 12, then they've both theoretically arrived at viable answers, because 16<19 and 12<19. There is no "extra credit" for Friend B, even though B's answer was closer to the target answer of 19.

If B and C both answer simultaneously, then the ELI5 analogy breaks down.

In Bitcoin terms, simultaneous answers occur frequently, but at the end of the day there can only be one winning answer. When multiple simultaneous answers are presented that are equal to or less than the target number, the Bitcoin network will decide by a simple majority--51%--which miner to honour. Typically, it is the miner who has done the most work, i.e. verifies the most transactions. The losing block then becomes an "orphan block." Now imagine that I pose the "guess what number I'm thinking of" question, but I'm not asking just three friends, and I'm not thinking of a number between 1 and 100. Rather, I'm asking millions of would-be miners and I'm thinking of a 64-digit hexadecimal number. Now you see that it's going to be extremely hard to guess the right answer.

What the hell is a "64-digit hexadecimal number"?

Well, here is one:

0000000000000000057fcc708cf0130d95e27c5819203e9f967ac56e4df598ee

The number above has 64 digits. Easy enough to understand so far. As you probably noticed, that number consists not just of numbers, but also letters of the alphabet. Why is that?

In order to understand what these letters are doing in the middle of numbers, let's unpack the word "hexadecimal."

As you know, we use the "decimal" system, which means it is base 10. This in turn means that every digit has 10 possibilities, 0-9. I will be rather alarmed if these do not look familiar to you:

0 1 2 3 4 5 6 7 8 9

"Hexadecimal," on the other hand, means base 16, as "hex" is derived from the Greek word for 6 and "deca" is derived from the Greek word for 10. In a hexadecimal system, each digit has 16 possibilities. But our numeric system only offers 10 ways of representing numbers (0-9). That's why you have to stick letters in, specifically letters a, b, c, d, e, and f. In a hexadecimal system, these are the values of each digit:

Hexadecimal figure
Decimal equivalent
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
a
10
b
11
c
12
d
13
e
14
f
15

The above chart is just for background. If you are mining Bitcoin, you do not need to calculate the total value of that 64-digit number (the hash). I repeat: You do not need to calculate the total value of a hash.

So what do "64-digit hexadecimal numbers" have to do with Bitcoin mining?

Remember that ELI5 analogy, where I wrote the number 19 on a piece of paper and put it in a sealed envelope?
In Bitcoin mining terms, that metaphorical undisclosed number in the envelope is called the target hash.

What miners are doing with those huge computers and dozens of cooling fans is guessing at the target hash. Miners make these guesses by randomly generating as many "nonces" as possible, as fast as possible. A nonce is short for "number only used once," and the nonce is the key to generating these 64-bit hexadecimal numbers I keep talking about. In Bitcoin mining, a nonce is 32 bits in size--much smaller than the hash, which is 256 bits. The first miner whose nonce generates a hash that is less than or equal to the target hash is awarded credit for completing that block, and is awarded the spoils of 12.5 BTC.

In theory you could achieve the same goal by rolling a 16-sided die 64 times to arrive at random numbers, but why on earth would you want to do that? The screenshot below, taken from the site Blockchain.info, might help you put all this information together at a glance. You are looking at a summary of everything that happened when block #498331 was mined. The nonce that generated the "winning" hash was 778400204. The target hash is shown on top. The term "Relayed by: Antpool" refers to the fact that this particular block was completed by AntPool, one of the more successful mining pools. As you see here, their contribution to the Bitcoin community is that they confirmed 2613 transactions for this block. If you really want to see all 2613 of those transactions for this block, go to this page .

How do I guess at the target hash? 
All target hashes begin with zeros--at least eight zeros, and up to 63 zeros.
There is no minimum target, but there is a maximum target set by the Bitcoin Protocol. No target can be greater than this number:

00000000ffff0000000000000000000000000000000000000000000000000000

Here are some examples of randomized hashes and the criteria for whether they will lead to success for the miner:


(Note: These are made-up hashes)

How do I maximize my chances of guessing the target hash before anyone else does?

You'd have to get a fast mining rig or, more realistically, join a mining pool--a group of miners who combine their computing power and split the mined bitcoin. Mining pools are comparable to those Powerball clubs whose members buy lottery tickets en masse and agree to share any winnings. A disproportionately large number of blocks are mined by pools rather than by individual miners.

In other words, it's literally just a numbers game. You cannot guess the pattern or make a prediction based on previous target hashes. The difficulty level of the most recent block at the time of writing is 1,196,792,694,099, i.e. the chance of any given nonce producing a hash below the target is 1 in 1,196,792,694,099--less than 1 in a trillion.

How do I decide whether Bitcoin will be profitable for me?

The aforementioned site Cryptocompare offers a helpful calculator that allows you to plug in numbers such as your hash speed, electricity costs etc. to estimate the costs and benefits.

I've done the math. Forget mining. Is there a less onerous way to profit from the Crypto boom?

Sure. As discussed, the easiest way to acquire Bitcoin is to buy it on an exchange like Coinbase.com. Alternately, you can always leverage the "pickaxe strategy". This is based on the old saw that during the 1848 California gold rush, the smart investment was not to pan for gold, but rather to make the pickaxes used for mining. Or, to put it in modern terms, invest in the companies that manufacture those pickaxes. In a crypto context, the pickaxe equivalent would be a company that manufactures equpiment used for Bitcoin mining. You can look into companies that make ASICs miners or GPU miners. Companies that manufacture these products include AMD and Nvidia.

Comments

Popular posts from this blog

Create cookie stealer in PHP? get via email

Php And Google Dorks 2017

Hack A Gmail Account using Packet Sniffer