I want you to feel that you could have invented Bitcoin for yourself. This story is about the thought process that leads to the invention of Bitcoin.
Let us go back in time. It’s 2008.
Mark owns a small business. Yesterday, his friend notified him his cheque bounced. Mark has no clue why this happened. He rushes to the bank. His account got wiped out. Last month he used a credit card to make an online purchase. The website got hacked and credit card numbers of the customers were compromised.
Natalie is a data scientist. She works at a retailer. She is forced to build an algorithm that studies purchase behaviours of people. It is then used to make their profile. Hope you know the story of How Target Figured out a Teen Girl Was Pregnant Before Her Father Did. Later a newsletter is sent which includes products that are likely to be purchased by the customer. Natalie feels guilty. She believes it is an invasion of customer’s privacy (So did Edward Snowden, that’s another story).
Joe is a refugee who somehow managed to escape his country. His wife is still stuck there. She has no source of income. He transfers $200 to his wife. The commission for the transfer is $20. In a year he loses around $240. To receive the money. Joe’s wife has to identify herself in person. In her country going out is a huge risk. It takes three days for the transfer to complete.
Imagine you are a programmer who loves solving problems. Joe, Mark and Natalie are your buddies. You are inspired to invent something that can benefit the entire world.
The first step is to define the problem.
In Mark’s situation, it was poor security that cost him his lifetimes earnings. In Joe’s case, his wife has to risk her life and the cash transfer service takes a hefty commission. For Natalie, she feels customer’s privacy should be respected. We are totally dependent on third parties like banks, retailers, etc. We have no alternative. Third parties take advantage of this situation.
“Third parties are ineffective yet we are forced to trust them.”
Your challenge now is to replace third parties. The features which third parties fail to offer becomes your value proposition.
Your system needs these features
There is a problem with existing currency. If you want to transact in U.S dollars it needs to go through a bank. That’s again a third party. What do you do?
Yes, that’s right. You have to invent a new currency. The only way to eliminate third parties. You need to help people create coin wallets. To respect user’s privacy you have to make them anonymous. You don’t collect information like name, email, etc. Instead, the user gets a randomly generated username and password. Example: If someone registers he/she will receive a username like “1248ACEGIKMbdfhjl” and a long password. Yes, this implies if a user forgets his password no one can help.
How will you enable coin transfer between wallets? Simple, you just have to update the ledger. How do you make sure only the owner of the wallet can spend his/her coins? You remember the lessons of cryptography. About digital signatures, public key, private key, etc. You incorporate it into your system (Your currency now becomes a cryptocurrency).
Now even if you build a system with new currency where will you host it? You can host it on a server. Banks do the same. The concern is they have a central point of attack. Another concern is the costs of maintaining it. The important issue is you become a third party yourself.
You have to build a system that maintains itself and has no central point of attack. You scratch your head. Sleepover it. When you open your laptop the next day, you see a notification.The uTorrent app says “Download Completed”. That’s when you think. Oh! the solution was right here.
Torrents uses peer to peer networks to achieve decentralisation. It has no central point of attack and it is self-maintained.
To build a peer to peer network you need peers. You need people running your code 24/7. Now, why would anyone do that? Unless you have an incentive. Well, you are making a new currency why not give some. But this must be carefully designed. If you give away a lot, then your currency won’t have value. So you incorporate principles of game theory into the system. That will incentivise people who run your code(a.k.a miners).
You write a paper about your idea and share it to among your network. Your friends understand it’s potential and ask you to give an executable. You make the first prototype and share it with your friends. They start mining.
Slowly this spread to your friends of friends. Some did for fun, some because they can brag among people who are rich in the MMORPG world.
You have solved Mark’s problem by using cryptography. The system is mathematically secure. Joe doesn’t have to pay a hefty commission and his wife can receive the money in minutes staying home. Natalie is happy because the system will never know who users are. As more people realised it’s potential. It’s demand increased. So did the price of your coin.
Congrats, You have invented Bitcoin. Kudos to you.
Follow HackerNoon and me (Febin John James) for more stories. I am writing a book about Blockchain. If you wish to get the pre-release version sign up here. I also recommend one book with every story I write. Because reading is invaluable. (Find the benefits of reading here). For this story, it’s Thinking in Systems: A Primer by Donella H. Meadows_._
I can respond to your bitcoin/blockchain queries via email. Let us talk.