The classic is that special computers race to solve a complex math problem. While this isn't technically correct according to many, is there a better way to explain it? Finding a needle in a hay stack? Curious what you all think.
pull down to refresh
I always like to explain it in terms of security:
Very good.
And these people running computers are incentivized into doing this work to secure the network by being rewarded with bitcoin. The fact that they are willing to expend capital to run these machines is one way to tie this digital token to the physical world.
Yeah, sorry, left out that key bit about what to incentivize them with. Was in a rush. lol
And tying to the physical world is how we know each block (each puzzle or set of transactions) is mined (solved or validated) using real work, a fact that many imitators can't claim or at least nowhere near the extent of the Bitcoin network.
Finding the right combinations of words for the right audience is tricky though. I need to dust off my copy of the Bitcoin Standard and make sure I'm phrasing these concepts correctly for a broad audience.
solving a randomly generated, big ass rubik cube. the miners are solving it, each on their own, turning sections and getting it to the right position. and once completed, the miner yells 'done!' and shows the nodes. its frivolous for nodes to confirm it was solved correctly as its obvious that all sides are the right color. then, onto the next cube
That's pretty good
Actually I like this a lot
I’ve used the math problem example many times. I usually get asked “but what is the problem for?” I think people have a hard time understanding that the goal is to provide a way to convert energy to Bitcoin at a (roughly) regulated rate.
Indeed. Proof of work has multiple functions. Providing security as well as tying it to the physical world through the use of energy. Technical people seem to get it more easily.
I've also used that explanation before, but I've found a new one that's more technically accurate and easier to understand. Computers compete with each other to find a unique identifier, which must have a variable number of leading zeros.
Although correct, I think it's still too abstract, and more contextual information will be needed for a non-tech person to truly understand. For example, what purpose does it serve? Why is it important? etc.
The WHY is a different question but you are correct. I think the why is easier to explain actually. We often skip the why and I think that's why people have a hard time with bitcoin itself.
IMO The best mental model for conveying proof of work to a layman is to explain it as a lottery game, where you have to guess a magic number to win.
The magic number is very large, completely random, and unknowable beforehand. The only viable strategy is to guess randomly until you get it.
That is an easy enough game for anyone understand, though it sounds like the most boring game on earth.
However, one upside is that you can guess as much as you want, as quickly as you can handle. So it makes better sense to play this game using a computer, where essentially the most computation wins.
It is also the simplest and fastest provably fair lottery system that you can play amongst computers. There are no ways to cheat and no central authority conducting the lottery. It's just a game of math and computation that a network of computers can play.
So while this lottery may be the most boring game on earth to humans, it can provide great utility for computer networks, and it happens to scale incredibly well.
The greatest example of course (in hindsight) is to run a peer-to-peer decentralized banking system, where computers can compete in the lottery to make updates to the central ledger, in a way that's provably fair across the network.
But another good example is spam prevention, where the lottery is kept fairly easy to play for a single round, but scales very poorly for multiple rounds (i.e a spam attack). Proof-of-work was invented originally for this use-case.
I hope this helps.
Proof of work is like starting a live stream, writing some viewer comments on a basketball, and trying to make full-court shots backwards. You keep trying until the ball gets in and once you make it, you number the ball and repeat the process with a new ball. Let's say everyone who got their comment on a ball sends some money to an escrow you can only spend after 100 balls are made after it.
Now if someone else comes into the stream while you're trying to get ball 64 in and does the same process of writing the comments and shooting backwards, then they can start stealing escrowed funds. For example, if they started from ball 63 and got ball 64 in, they would be entitled to the escrows for both balls (63 and 64). In that case the original person could focus on ball 65 and get a new escrow, or he can try his luck at overtaking the second person from ball 63 again.
In this example the balls are blocks, the comments are transactions, the miners are players, and the escrow is the combined fees and subsidy. Shooting balls is the equivalent of mining with sha256 and the winning block hash (with preimage) is like the video of the ball going in (the thing produced that shows you did the work).
I didn't add a difficulty adjustment in my analogy, but let's say when the commenters see too many balls get in the hoop too quickly, the commenters stop giving money until the basket is moved even farther from the players.
Hands down a Rubik cube metaphore.
view on twitter.comDoes anyone remember peercoin?
I say it's more like becoming a partner in the Bitcoin Revolution while maintaining the security and ethics for Bitcoin.