I recently started delving into the world of a new currency which you might have heard of - Bitcoin. I figured out I want to know more about it, and what applications it might have. As it turns out, the concepts behind Bitcoin are actually not that complicated, and I believe that if you are able to grasp the concept of money as we know it, in the form of the proverbial cold-hard-cash, you should have no problem understanding Bitcoin and how it works. I'll simplify some concepts in order to make things understandable, but the concepts will absolutely remain true to form.
What is Bitcoin?
Bitcoin is the name of a currency that exists entirely in a network of computers, even your computer at home can be part of that network. There are no real, physical, coins or bills. Nothing other than data stored in various computers all over the world.
How does it work?
Bitcoin, at its core, is essentially a huge list of transactions, that anyone can have a copy of. A simple list might look like this:
A (10) -> B B (4) -> A B (3) -> A
In this simple list, we have two people, A and B. A sent B 10 bitcoins, after which B returned 4 bitcoins to A, and then decided to send 3 more bitcoins back to A. So this list is nothing more than a series of transaction details.
So assuming both A and B had 20 bitcoins to start with, after the three transactions, A now has 17 bitcoins left, while B has 23 bitcoins in his wallet. Easy stuff. Now, for an outsider to know how much money each party has, all he needs to do is know how many bitcoins each one had to begin with, and from there he can simply add and subtract the details of the transactions and find out who has how many Bitcoins. This is, in essence, the Bitcoin system.
How is this data saved?
This transaction list is shared between many computers all over the world. If A wants to send B 10 bitcoins, he would just issue that transaction on his computer, which would then, in turn, tell the whole world "Hey! A just sent B 10 bitcoins!". Over time, that message would propagate all over the Internet to everyone running a Bitcoin client. That's all there is to issuing a transaction.
Wait, so, I can fake transactions!
Not really, no. Transactions are secured using strong data encryption methods. These are the exact same methods that are in use to securely transfer your credit card details when making an online purchase, or when logging in to your e-mail account. These methods ensure that only the sending party is able to issue genuine transactions.
So who verifies the transactions?
Well, someone has to go over the list of transactions and approve them, otherwise the list has no value. Therefore, anyone who wants to can contribute to the system by reviewing the recent transactions, and doing some heavy calculations on the data, to ensure that they are all indeed valid.
Why would anyone do that?
Simple, because by donating computing power, you actually receive Bitcoins from the system! The process of verifying the transactions is called mining, and is rewarded with Bitcoins that the system generates just for you, out of thin air. This is how Bitcoins are "printed".
Is there any other way to get Bitcoins?
Sure. If a friend of yours is willing to, he can give or sell you any amount of Bitcoins he wants, as long as he had some to start with. He will issue a transaction saying that he transfers some Bitcoins to your possession. He can either do that for free, but more likely that he'll ask you for something in return, so you'll probably be paying him back either in cash, or giving selling some product or service to him. In any case, that's up to the two parties to solve between themselves.
So how is this different from the current cash system?
It's not! Think about it, coins and bills are just pieces of metal and paper, with little significant value. The value they have is the one that we give them. By printing "100" on a piece of paper, we're saying that it is worth 100 units of something. So when people start to accept Bitcoin as a valid currency, it is in not that different than any other currency in use around the world, other than that it has no physical existence.
I have 100 Bitcoins, what does that mean?
That means that over time, you have accumulated 100 Bitcoins, either from transactions with various people, or by mining them (and then it would be the 'system' that gave you the Bitcoins). Anyone going over the list of transaction and verifying its accuracy will end up with the same answer "yep, he really is the legit owner of 100 Bitcoins". You are free to do whatever you want with these Bitcoins in your possession.
In essence, this is all there is to the Bitcoin system. Of course, there are many more issues that derive from this system. In further posts I'll talk about the exact monetary value of Bitcoins, how anonymous (if at all) the system is, and various interesting dilemmas that arise from the usage of such a currency.