Today at lunch I had an interesting conversation with my father-in-law who was curious about Bitcoin. Lately I’ve received curious questions about this from peers, friends and family, so I think it could be a good idea to put my thoughts in writing. If you would like to get a more detailed view, I recommend visiting bitcoin.com or reading “Mastering Bitcoin” by Andreas M. Antonopoulos.
Bitcoin is an algorithm described in 2008 in still anonymous Satoshi Nakamoto’s whitepaper “Bitcoin: A Peer-to-Peer Electronic Cash System”. This algorithm is developed and maintained by the open source community and run by the miners, who get bitcoin as compensation mining bitcoin blocks.
Who creates these bitcoins? can’t this bitcoin creating entity create more and more?
This is a great question, to understand it, first you need to understand five ideas:
- What is a hash?
A hash is a function that for an input of any size returns an output of fixed size (256 bits) with 3 very interesting characteristics: 1) this function is calculated very fast 2) a minuscule change in the input (a comma in the bible) produces a radically different output, so there is no danger in mistaking one hash for another. 3) the probability of having two different inputs that produce the same output is similar to finding an atom in the observable universe.
- What is a blockchain?
A block is a data structure which holds information of the last transactions that have happened. Within this data structure, one field holds the hash of the previous block. This hash links each block to the previous one forming a linked list, or chain.
If a malicious user wants to modify a transaction which happened in the past, let’s say 30 blocks ago, to record that he received 100 instead of 1, he would need to modify the 30th block on which his transaction happened, calculate the new hash of the modified 30th block, modify the link field of the 29th block with the modified hash of the 30th block, calculate a new hash for the modified 29th block and modify the link field of the 28th block to add this new hash, and so on until the most recent block.
- How are bitcoins generated?
A miner can be any normal person running the bitcoin software in their computer. In the bitcoin network, there are thousands of transactions happening every second, these transactions are communicated to all the miners who compete to be the one to calculate the next block the first. A new block is created by the fastest miner every 10 minutes. In order to be the fastest, the miner has to solve a simple problem which can only be solved by trial and error: create the new block with the pending transactions, fill the salt field with a value of your choosing, so that the first 10 characters of this block’s hash are 0. The algorithm self-regulates the difficulty (number of characters which must be 0) so that a new block is calculated every 10 minutes.
The miner which produces the block the first is allowed to add to the block an additional transaction giving him 5 bitcoins. This answers the original question, “who creates these bitcoins?” the miners. “can’t this bitcoin creating entity create more and more?” No, only the miners can create more by competing for the next block and obtaining the reward.
- How can I get bitcoins?
You can either obtain bitcoin from someone who you know has them, in exchange for goods or services, or you can go to a market such as poloniex.com or kraken.com, create an account, transfer some EUR to your account from your bank and send an order in the market to buy bitcoin. Cryptocurrency market orders function the same way as you may be use to buying and selling securities at your bank’s online webpage.
- How can I use bitcoins?
Once you have bitcoin, you can store them at your market’s account or you can transfer them to your bitcoin wallet (a software which you install on your computer), you can send bitcoin to any other bitcoin wallet anywhere in the world.
Bitcoin allows cross border, immediate payment without needing to rely in any intermediary institution such as a bank, or an online payment company (paypal).
If you are interested in digging deeper into bitcoin, I recommend you watch this video by Andreas M. Antonopoulos.