In late 2008, a person with the alias Satoshi Nakamoto published a technical white paper describing the bitcoin protocol to a cryptography mailing list.
A few months later, in early 2009, he released a full, open-source implementation of the protocol described in the paper.
Commerce on the Internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments. While the system works well enough for most transactions, it still suffers from the inherent weaknesses of the trust based model. — Satoshi Nakomoto
Over the last decade, we have seen a huge rise in e-commerce and online banking. We rely completely on banking institutions to handle the transfer of money. Because these banks are centralized systems, we place our trust in them, however:
- A user's account can be frozen anytime the bank chooses it wants to do so — there's not much a user can do about that besides contact the bank to resolve the issue.
- Banks are susceptible to hacking, bankrupting, or other issues that cause the loss of funds — again users hope that banks employ the best security and due-diligence when loaning out money.
Satoshi's proposal included software that anyone could use to do either of two things:
If you downloaded Satoshi's software, it would let you commit some of your computer's processing power to help secure the network (more on this later). The most important thing to understand about this is that if you committed your computer's processing power, you would basically receive bitcoins every so often to reward you for your computation, i.e. this would be your incentive.
This is the only way bitcoins could be created — so mining doubly served not only as a means of securing the network, but as a means of determining the initial distribution of the coins. I.e. Before the first block was mined, no bitcoins existed — but as more blocks got mined, the "miners" received newly-minted coins, and the supply of bitcoins increased to the number of coins in circulation today.
If you downloaded Satoshi's software, you could also connect to all the other computers running his software and send or receive coins from them. Although this functionality might seem trivial to anyone who uses modern currency today, what made Satoshi's software different was that you could use it to transact without any centralized server in-place.
If you sent money to a friend, it wouldn't have to go through Bank of America's servers, for example. Instead, you'd just announce the transaction to all of the computers running Satoshi's software, and they'd update your balance and the balance of your friend. This made the currency appealing not only from an ease-of-use perspective, but from a fault-tolerance perspective as well.
There was no centralized server storing all the transactions that could be compromised by an attack. There was no central entity you had to trust. Unless you compromised a majority of the computers running Satoshi's software, something much, much harder than compromising a single server, the network's state would remain intact, and everyone's balance would be preserved.
At a high level, the scheme was simple: You could run Satoshi's software on your computer, and use it to either mine coins or send and receive coins. Initially, the miners were the only ones who had coins, since mining was the only way coins could be created and introduced into the system, but remember that anyone could use their computer to become a miner. So as the miners created new coins and transacted with others running Satoshi's software, and as they put their coins up for sale on exchanges, the initial distribution of bitcoins diffused, and bitcoin began to spark a decentralized revolution.
In short, Bitcoin acts as a decentralized medium of exchange.