Take the 2-minute tour ×
Bitcoin Stack Exchange is a question and answer site for Bitcoin crypto-currency enthusiasts. It's 100% free, no registration required.

I will be explaining Bitcoin to a non-technical group and I am hoping somebody can provide me with a very basic visual analogy of the crypto-currency mining process.

My half-baked idea, was to somehow describe the mining process as partaking in a complex word search. Hopefully getting my group to visualize a large pool table sized word search (block) and have them imagining searching for a 30 alphanumeric character identifier (wallet). Describing the blockchain as a city sized word-search on top of 21 million pool tables?

  • Is this a good analogy to use, or is there a better/more applicable one?
  • Using (and adding to) the best analogy, how can I explain the difference in mining with CPU/GPU/ASIC and why the ASIC hardware is the quickest?
share|improve this question
5  
I think a good analogy is mining… –  AFS Dec 8 '13 at 1:37
    
Analogies... 'ex ingeniosi animi' –  user10385 Dec 8 '13 at 23:51
    
I haven't had time to read it, but Bruce Schneier recommends this as the best explanation of bitcoin - might help –  figlesquidge Dec 10 '13 at 10:52
add comment

migrated from crypto.stackexchange.com Dec 15 '13 at 22:16

This question came from our site for software developers, mathematicians and others interested in cryptography.

7 Answers

Imagine News City, where everyone is a newspaper editor competing to create the next day's newspaper. Only one newspaper editor's draft will make it into print, and its editor wins a fat check.

Over the course of the day there is a lot of events happening. Each newspaper editor will eventually gain knowledge of each event through word of mouth, but they hear about them in different orders and with different delays. Upon receiving news about an event, each newspaper editor will verify the event's validity, then discard bogus events and any events that were already previously published. If there is exceptionally many events, he might also need to select which ones are the most newsworthy and rewarding, as there are only so many pages available per issue, leaving the remaining events to be published the next day.

Because the news editors as a group would never be able to decide without envy whose news selection should be printed (since every one put at least one draft in), News City has hired a notary in Monte Carlo that randomly picks some words from a dictionary for each upcoming issue, of which one must be used somewhere in the draft in order for it to qualify. Every editor may turn in one draft at a time, but when it doesn't qualify, follow-up with another as often as he wants. They might be scrambling the selection of the articles or adding quotes from famous people to vary the used words, in order to win the prize.

The incorruptible notary will forward a winning draft to the printer immediately, and also publish the list of words that would have won. He is contracted to aim to have one issue per day. So, when he gets a lot of submissions, the issue might be a bit early, and he will pick fewer qualifying words for the next issue trying to keep the editors busy for a whole day before coming up with a new qualifying draft.

The events here are Bitcoin transactions, the newspaper editors the miners, the incorruptible notary is the Bitcoin protocol, "a day" the 10 minute block interval, and the word-picking scheme portraits the difficulty.

share|improve this answer
add comment

So I'm not entirely sure that this is what you're looking for, but your question specifically asked about the mining process, not exactly how to explain transactions or the blockchain...

So, mining is kind of like blending food. If you blend some food, you get a unique output, which is some sort of mush. It is very easy to make this mush, however it is very hard to take the mush and recreate the food you started with.

If you take a pound of carrots and a pound of celery, and blend them you will get a certain type of mush. If you again take a pound of carrots and a pound of celery, you will get the same type of mush.

Mining is like trying to find a certain type of mush (or output). You need to blend a lot of different things and get different types of mush, and once your mush matches what you're looking for, you have been successful.

At this point you know the ingredients needed to make the mush and can reproduce it easily. This means that others can reproduce what you did and prove that you did, in fact, find the solution.

With bitcoin there are a lot of outputs which we are trying to find, and therefore we need to try an impressive amount of "ingredients" (input) to find all of the different solutions. Once you find the ingredients for a solution, you have solved the problem and are rewarded with a certain amount of bitcoins.

share|improve this answer
add comment

First, tell them that mining is a very bad analogy and they should forget it.

I like to think of it like people buying Wonka bars in an attempt to find the Golden Ticket. Everybody who works on securing the blockchain is trying to find some unknown number that, when combined with a number from the blockchain, achieves a desired result. The first person to find it, wins the rewards (transaction fees + new coins).

The more numbers you try, the better your chances of finding the special number before anyone else. The protocol adjusts automatically: as more people work on finding the magic number, the harder it becomes to find.

Few people "mine" by themselves these days. People band together in pools to split up the work, and then share the rewards. Instead of having a small chance to find a huge reward, you get a steady stream of bitcoins.

share|improve this answer
add comment

The value of Bitcoin is that of it being a trusted payment system network (analogous to Western Union, Visa, Master Card...) with adequate availability. Without pools and miners it would be difficult for Bitcoin to have scaled as much as it has.

Miners are fundamentally doing the brute force work of processing the Bitcoin transactions, by solving a mathematical hashing riddle required to make transactions officially part of the Bitcoin public ledger called the Blockchain. The pools coordinate the miners in to ensure they are not re-doing work other miners have already accomplished. Pools collect the transaction processing fees and the "Finds" of miners (that have solved the mathematical riddle for a block), and distributes the profits to is miners according to the effort they expended.

What is really unique is the Bitcoin transaction processing architecture is that the centralized transaction processing paradigm is no longer required. Pools and miners don't have to be co-located nor in the same "cybersecurity domain" requiring consistent security control postures to be applied to all system components. Transaction processing is effectively outsourced by the pools to miners in a very competitive and fluid market. Miners hop if they don't like their bottom line mining with a particular pool.

STM (Stratum) and GBT (Get Block Template) are the workhorse protocols miners and pools use to communicate to effectively complete the Bitcoin transactions. If STM is used, pools essentially push candidate transaction processing blocks down to thir miners. Miners use GBT if they want to be selective about what transactions they want incorporated into the Blockchain, provided they solve the riddle.

Read the Dec. 2013 three page Federal Reserve paper titled Bitcoin: A primer. The intended audience is most definitely non-technical.

If your audience is technical, but not knowledgeable, point them to http://www.youtube.com/watch?v=Lx9zgZCMqXE&feature=c4-overview&list=UUOGrxFj_j7PZRQM63OFCwmA.

share|improve this answer
add comment

I like the analogy of solving a Rubik's Cube or a Sudoku puzzle. The clearest part (in my opinion) of that analogy is "hard to solve, trivial to verify".

For the second part of your question, using an ASIC could be like being able to work on hundreds or thousands of Rubik's Cubes (or Sudoku puzzles) all at the same time.

share|improve this answer
add comment

There are two aspects to mining. The first is functional aspect (what is it supposed to achieve) and the second is the technical aspect (what is going on under the hood).

For the sake of clarity I'll deal with both.

In the (very) long term the process of mining is about approving transactions and making them unchangeable once a block of transactions has been included into the blockchain. The Blockchain is a ledger of all transactions that has ever occured. A block is just a group of the latest transactions that when grouped together meet certain technical requirements.

As a reward for doing this (again in the long term) a miner can receive the transaction fees. In the short term, and as an incentive for early adopters, the miners are given an additional bonus: they receive a reward of 25 bitcoins for "discovering" a block.

OK this is where it gets technical.

The process of block "discovery" is where a mining rig is required to run through a repeating process called "hashing". In laymans terms - hashing is jumbling and mixing up some text in a such a way as to arrive at a repeatable outcome.

In other words if somebody else was to perform the task with the same starting point, they would also arrive at the same end point: the same sequence of jumbled letters and numbers.

So what are the miners looking to discover? They are looking to discover (or more specifically be the first to discover a hash result that starts with a series of zeros. It is a lottery and in order to do that the miner must use a combination of things: the transactions it is receiving, the previous block are just two, and put that information into it's hashing machine and check each result to see if it matches a hash with the right number of zeros.

Once they have done that - they publish the result to the network, and every other node checks the results for correctness. The result is easy to reproduce once someone knows what is required to go into it.

There is a third thing that I didn't mention - equally important but easy to grasp: the miner must check each transaction against its own copy of the ledger to validate that each transaction is genuine.

Obviously if you want to win this lottery computing power is required, therefore more and more specialised equipment is needed. An ASIC is a chip that only does one task: hashing. Therefore it can be designed in such a way as to perform the task as fast as physically possible, and for this reason it has a much better chance of winning the reward of the 25BTCs and the transaction fees for all the transactions in the block.

share|improve this answer
add comment

I like the concept of Transaction Processing. "Miners" process the transactions on the bitcoin network. "Miners" move the funds on the bitcoin network.

Transaction Processing involves making random guesses to solving a mathematical problem. Why? The time delay created by the difficult mathematical problem eliminates double spends. This is the brilliance of bitcoin.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.