9

Often times when I explain to someone that there is a limited supply of bitcoins available that need to be divided across all the people who want to have bitcoins, the people who are computer illiterate will ask how I know that the number of bitcoins in circulation can not be changed or manipulated. They usually just get a glossed over look on their face when I start talking about decentralized protocols. Has anyone come up with a good way of phrasing it or an good analogy to get people to understand how these limits are determined, enforced, and protected?

9

You could explain the coin limit like this:

When Bitcoin started, its creator set a rule - "No more than 21 million Bitcoins will ever be created, and they will be given out gradually for creating blocks" (Add further explanation of block reward or proof-of-work here if needed). Everyone who joined Bitcoin knew about this rule, and they were all for it. As everyone can see all the money created by solving the blocks, everyone can check if someone tried to go against the rule and cheat. If cheating is detected, nobody will accept the solution, instead looking for one that follows the rule. Because everyone is checking everything, nobody can cheat and create more Bitcoins than is allowed.

5
  1. You download a program that "generates" random numbers again and again and again (millions of times per second depending on your computer speed). Think lottery.

  2. Two different people will not get the same random number, because each person has his own predefined set.

    For a very simplified example, numbers from 1 to 1000 belongs to "me", and numbers from 1001 to 2000 belongs to "you". If you decide to generate a random number from 1 to 1000, you are helping me win the lottery.

  3. If the random number matches a "pattern", it is accepted. If it doesn't match the "pattern", it is rejected.

    For a very simplified example, if the "pattern" says we accept only even numbers, then ~50% of the random numbers will "hit lottery" and 50% will miss. If the pattern was so easy to match, I can simply generate the numbers 2, 4, 6, 8... and get a 100% hit rate. Apparently in the real case, even the simplest "pattern" is so hard to match that we can't simply work backwards and try to derive a number that will match the "pattern". The only way to get a number that will match the "pattern" is though trial-and-error, which is why its exactly like lottery.

  4. If the pattern is easy to match (relatively speaking), we will get many hits. If the pattern is hard to match, we will get lesser hits. The pattern changes every 2016 hits to ensure that we get roughly 1 hit every 10 minutes. If we hit too quickly, we get a harder pattern to match (so future hits will be slower). If we hit too slowly, we get an easier pattern to match (so future hits will be faster).

  5. A cheater can't just invent a "simple pattern" to follow, because everyone agrees on what pattern to follow. If his pattern differs from the majority, it means that the majority wouldn't accept it (we don't recognize the coin he generates).

This is how we ensure that batches of BitCoins are created roughly once every 10 minutes and a cheater can't simply decide to generate them every second.

4

Bitcoins are misnamed: a bitcoin is not an object, not even a virtual object. There is one global bitcoin ledger, containing a history of all bitcoin transactions.

Everyone can see and check the ledger.

The ledger is made of "pages" (they're actually called "blocks"). Creating a valid page in the ledger has been made artificially very difficult, needing on average many days of CPU time - this means that creating a whole fake ledger (actually called the "block chain") is even more difficult, so nobody can do it.

Each page has to identify the previous page in the ledger, which you have to do before you do the difficult work. That means you can't make random pages, you can only make the next page in the ledger.

To get people to do this very difficult work, each person who makes a page is allowed to put one special transaction in the page, crediting themselves. This is the only way new credits get onto the ledger, as normal transactions just move credits from one account to another.

Making these ledger pages is called "mining", and anyone can do it, but it requires a powerful computer.

By the rules, the first 210,000 pages can have a special credit of 50 bitcoins. That halves for the next 210,000, and again for the next 210,000, for ever.

If a page has a special transaction that adds more credit than the rules allow, then it's not a valid page and nobody will use it as part of the ledger: their software will reject it.

That means that mathematically, the total of special credits, which is the total of all the bitcoins in circulation, can never reach 210,000 x 50 x 2, or 21 million.

  • 2.1M -> 21M. Great description, btw :) – Alex Yakunin Aug 6 '12 at 22:13
  • This would be great for the "Simple English" Wikipedia. – Nate Eldredge Aug 20 '13 at 15:03
3

How about this. Think of the mining process as being like a variation of the game Bingo. Let's call this variation proof-of-work (POW) Bingo. POW Bingo is almost a reverse of how Bingo is normally played.

Let's say that for each game of this reverse Bingo, a dozen numbers are dropped from the drum of numbers and all twelve numbers are shown all at once.

And then there are many tables in the Bingo hall, each with a huge pile of Bingo cards on it. There is one table used per Bingo game.

So when a game starts each person playing grabs a card from the pile and looks to see if the card contains a winning Bingo. If it doesn't, the player tosses the card aside and grabs another card. This is the "work" being performed ... searching for a winning Bingo card. There is likely more than one card in the pile that would win the Bingo game, but the race is on to be the first player to find a winning card for that game.

The player who does find a winning card yells BINGO, notarizes the batch of transactions in the bitcoin ledger (which have been accumulating since the beginning of the game), and asserts ownership of the prize (currently a 25 BTC reward).

All players then want to move on to another table to start playing the next Bingo game but knowing which table to go to is something pre-determined by the ID of the winning card at the game that just had the winning Bingo. There's a chance the player claiming to have a winning card had lied or was otherwise mistaken so each player will first want to confirm the validity of the card that supposedly is a winner. The checks performed are that the card truly does have a Bingo (based on the numbers that dropped from the drum), that the prize claimed is no more than the amount allowed to be claim for that particular game, and that each transaction in the batch of transactions is valid (funds had not previously been spent in prior batches).

If that all pans out then at a later time the player who called the Bingo is allowed to spend the bitcoin reward earned from that game.

After verifying the winning Bingo card each player then knows which table of cards to move on to next. At that next table is another drum of numbers. That drum too now has its twelve numbers dropped so the next game of this reverse Bingo can start.

After each Bingo game is completed one result is that there exists a trail going from the current table back to the previous table, and from there back to that game's previous table and so on all the way back to the very first Bingo game that was played.

So there is this chain of games that were played, each dependent on the results (discovery of a winning card) of the prior game. The current Bingo game always occurs at the "tip" of the chain, and that chain's length will include each table along the path back to the very first Bingo game played.

It is possible in a game for there to be more than one person to have a valid winning card. When that happens there are multiple calls of "Bingo" and these could be yelled out at about the same time. This introduces a conflict because there ultimately needs to be only one winner per game.

The approach to solving this conflict occurs in a unique way. When there are two Bingos that are each valid for the same game, some players will move on to the next table pointed to by one of the winning cards while other players will move on to a different table as that was the table pointed to by the other winning card.

Thus in that instance the path for the chain of successive games will appear to have an end with a split. This is referred to as a fork. Some amount of work (players looking for winning cards) will occur on one side of the fork and some other amount of work will occur on the other side of the fork.

Eventually a Bingo will be called on one of these sides or the other and the conflict is resolved as whichever side is the first with a winning Bingo ends up being the side which extends the path for the chain further. The rule observed by all players is to recognize the chain's path which includes the most number of tables as the path to follow. If a player finds that some other path (generally the other side of the current fork) becomes longer (i.e., has a higher number of successive Bingo games in the chain) then the player abandons the current path and joins the others at the game table at the tip of the path that has the longest chain.

For the most part, this longest chain will be the one in which the most work (sorting through Bingo cards) is performed. Luck can be the reason why one side of a fork happened to win even though it had fewer players than the other but overall the longest path ends up being the link of games in which the most amount of work had been performed.

Because there is money that is earned from the per-game award, word gets out and more people will arrive at the Bingo hall to help sift through the cards. As a result of a growing number of players (and thus, more work being performed) it starts taking less and less time with each game before a winning card is found.

To counter this, periodically the quantity of Bingo numbers that are dropped from the drum is decreased, from say a dozen numbers to just eleven numbers. This decrease makes it more difficult to find a winning card because it generally takes more work to find a winning Bingo card from the table's pile when only eleven numbers are dropped versus the the amount of work needed when there were twelve numbers dropped.

It really doesn't matter which set of numbers are dropped, because for each round, nobody has an advantage -- everyone has equal access to sift through each table's pile of Bingo cards.

The end result is that no matter how many people are sifting through the piles, roughly the same number of Bingo games are held each day (targeted to 144 games per day, with one game occurring every 10 minutes).

This approach is what ensures that there is no cheating that would cause a significantly greater reward to be issued and why more miners arriving won't cause currency inflation (i.e., a higher production of the per-game award).

2

Personally, I think it's useless to explain or to mention this limit (it's just an imaginary limit anyway, new chains with better properties will appear before it is reached!).

So, you'd rather just mention that bitcoin generation is limited to some fixed amount per day. This limit is guarantied because people who want to join the game of money creation have no other choice than to follow the pre-existing rules (and this includes everyone, for example current miners but also future developers)… unless one manage to convince more than half of the network that rules need to be changed. Such a change would be similar to the birth of a new (improved?) currency, that everyone would adopt and which may enforce different rules.

Notice that nowadays this happen quite often. Bitcoin is still young and minor changes proposed by the developers are adopted easily.

1

I usually explain it like this: What constitutes a "Bitcoin" is precisely defined, just like what constitutes an "ounce of gold" is. Due to this definition, it is not mathematically possible for more than a certain number of distinct Bitcoins to exist. For example, since we all know what "a positive integer less than or equal to 100" means, there can only ever be 100 of them.

You may need to go on to explain that just as two 33's are copies of the same number, there can be any number of copies of the same Bitcoin. And in fact there are thousands of copies of every Bitcoin. Since they are copies, they reflect the same owner owning the Bitcoin.

If you need to go on to even more detail, explain that Bitcoin has an ordering rule such that a "bigger" version of the same Bitcoin "wins" over a smaller one. When I give you a Bitcoin, I get a miner to "add in" the transfer making your version of the Bitcoin bigger than mine. Thus your Bitcoin wins over mine, and so I can no longer spend it but you can. I give you the Bitcoin by announcing this "bigger Bitcoin" to the world, so nobody will ever accept my "smaller Bitcoin" again.

-2

Don't use any big words like "decentralized".

I just say something like 'The system is designed so that roughly every 10 minutes 50 new bitcoins are generated'.

Then again, most people I dare to discuss bitcoin with are techies.

You could always try the mining gold analogy.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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