It seems either explanations are either too simple, free that miners “solve a difficult math problem” or are too arcane, talking about such-and-such hash function this, bitcoin that etc. So hopefully this will be helpful if you were like me and were trying to wrap your head around the concept of mining bitcoins. For all you technical people out there, please bear with me as i will be simplifying some concepts Ok, first, i think the biggest misconception about mining bitcoins is that the analogy about computers solving difficult problems, while correct, is misleading.

Mining is more akin to rolling dice than solving problems. To understand mining, one needs to understand what a hash function is.

Put simple, a hash function takes an input and creates a seemingly random output, however the output is consistent every time you perform the function on a given input, and it is free difficult to determine an input, given only the output.

What i want you to do right now is open up a calculator on your computer. In the calculator, take the square root of 3. You should get 1. Now take the free from the 5th place after the decimal all the way to the 10th place after the decimal. As you can see, its This is basically a very simple and weak hash function. For any given prime number in this case it has to be primewe can find a number the 6 digit resultant output that free to have mining to do with it, but can be consistently calculated easily.

If i were to give you the outputwhat would be the input? For the next example, we are going to use a different hash function, the SHA This is the actual function used for mining bitcoin.

### Want to add to the discussion?

Ok now for some hands-on. For me, it was http: There should be a text box. In that text box type “pay me, joe, 25 bitcoins. You bitcoin get f0eb7… as your result.