Imagine you’re at a table with some friends. You come up with a set of rules to create a type of money that you can only use between each other. You decide that math is really hard, but doable, given enough time and energy. You decide that there’s a certain math problem that you all like to do, and you know you can find ways to do it faster and faster as time goes on. You set how many times you want to try to solve a really hard math problem as the basis for work.
Every so often, when someone in the group solves a that really hard math problem, that person tells the others of their triumph. The others can quickly verify that the solver is truthful, so after checking their work, they all write down that that person has gained some money. When someone lies about solving a problem, everyone knows and ignores their claim. This continues until we’ve solved the math problem the number of times we’ve set (this will take more than 100 years).
That briefly describes "mining". Now, transactions.
A transaction is when someone sends money to someone else.
When someone in the group spends money, they tell everyone else in the group to whom they’re sending their money. However, it’s done in a way that makes it really hard to actually tell who is sending and who is receiving. It’s not 100% impossible to tell, but it would take someone a lot of time to figure out.
When that someone sends money, everyone can check to ensure that that person actually has enough money to send what they claim to have sent. This is especially important to the receiver. If enough people say that the sender doesn’t have enough money to send, the sender’s transaction is ignored. He’ll be able to try again in a little bit (and hopefully he’ll be more honest or careful this time!).
The really cool thing is that everyone who wants to send or receive money knows how much everyone else is sending or receiving, even though they can’t really identify a person behind the transaction. Plus, a person can look at the history of every transaction since the beginning of this fun system. This is called the public ledger.
Whenever someone sends money, they send a little bit extra along with their amount. This is called the transaction fee, and it’s kinda like a tip. It’s given as a reward to the person who solves the really hard math problem as an extra bonus! Over time, the reward money the solver earns will go away. Eventually, this transaction fee reward will be larger than the reward for solving ever was! So, this transaction fee gives people a reason to keep solving math problems forever.
Whenever someone sends money (creates a transaction) and their send is truthful, there’s a hash created. A hash is like a secret word that you can only remember if you combine a few other words you always know. By combining some of the information about a recently solved math problem and some information about the current transaction, you can ensure that no one can fake our transaction again – not even yourself. Each transaction is contained within some notes about that recently solved math problem – these notes are called "blocks".
When we hash the blocks and the transactions together, it creates a chain with links that are impossible to replace without going back and doing all of the math problems again and convincing all of the other people that your new, replacement work is the real work. This is virtually impossible, so transactions and blocks are not able to be faked or undone.
When someone new wants to join in so that they can use the money, too, they request a copy of all of the notes — the blockchain — and thus have their own copy of the public ledger. They can look at everyone’s transactions and add their own to the mix, as long as they adhere to the rules we’ve all agreed on.
If they want to get some money to spend for themselves, they can try to solve math problems (mining), exchange some valuable item to someone already in the group in exchange for some money (exchanges or stores), or do something to help someone in the group so that they can earn the money, like mowing their lawn or cleaning their room.
It used to be really easy to do the math problems, but it’s getting harder and harder daily. Soon, the amount given to someone when they solve a problem will halve! They’ll get only 25 coins instead of 50 coins. There are some good reasons behind this, but they’re a little hard to explain to a five year old. So, people are looking to buy into the group’s money or do something in exchange for money they can spend within the group.