Projects like Bitcoin, Blockstream or Ethereum are about to change the world in irreversible and unpredictable ways (much like the internet did in the 90s) through the Blockchain technology. It makes possible to create things like digital nations, cryptocurrency based universal basic income, autonomous democratic organizations, adaptive employment networks without intermediate management, or incorruptible distributed computers that run on “ether”.
Understanding the Blockchain technology is very important if you want to acquire the capacity to think and imagine what is possible to do with it, why, how and to which extend we can trust it and how to start using these tools without blindly having to trust third party gurus or applications. More importantly, if you don’t think there can be anything good coming out of a digital currency, you need to understand it first. You won’t be able to critize Bitcoin, explore its deepest implications or fight against its most potentially harmful effects if you don’t understand how the Blockchain works. I am myself skeptical about the potential of Blockchain technologies to challenge the existing injustices and social and economy power struggles. But I want to understand the future. And the Blockchain is here to stay.
This introduction will walk you through a number of relatively short video tutorials and introductory lessons that explain the fundamental principles and concepts that are required to understand Blockchain technologies, of which Bitcoin is the most known and widespread application, but not the only one, nor the most innovative.
Ok, you got a first glance of what the Blockchain is. But how does it actually work? As you might already be aware of, Bitcoin and Blockchain are the result of sophisticated cryptographic tools, protocols and standards. Cryptography is the science of encrypting messages, that is, of codifying a message so that only the sender and the receiver can decode it. Interestingly, cryptography had to solve other kinds of problems to make communications secure. So, for instance, you need to ensure that the message has not been modified, or to ensure that the sender is really the person that says she is (and not someone else). The technologies developed to solve these problems lie a the core of the Blockchain technology.
For a long time symmetric (or private key) cryptographic techniques have been used to encrypt messages. Alice and Bob share a secret password to encrypt and decrypt messages. For example using a look-up table that changes the letters of the alphabet, or according a page of a book and sending the numbers of the letters of that page to encode the secret message. There is another way to encrypt messages, and it is called asymmetric or public key encryption. This one matters most for the Blockchain. Alice wants to send an encrypted message to Bob, but this time Bob has a private key and a public key. The public key is available to everybody. It functions as a lock whereas the private one functions as the key that unlocks it. Anybody can use Bob’s public key (the “lock”) to send encrypted messages to him, but nobody that intercepts the message can unlock it, except Bob with his private key. Alice uses Bob’s public key to encrypt the message to Bob and he uses its private key to decrypt it. In addition, Alice can use her private key to sign the message, to stamp it in a unique manner that is only possible for her to do. This way Bob can use Alice’s public key to certify that is was Alice, and not Eve, who sent the message. Moreover, Alice’s signature of the message guarantees that the content of the message is what Alice actually wrote. This way even if Eve intercepts the message it is impossible for her to modify it before it gets to Bob (without him realizing that the message was actually modified).
Another concept that is important in order to understand Blockchain technologies is that of a hash. A hash is a short “description” or “compression” of a data block (e.g. a book or a picture). A hash is created using a mathematical function (a hash function) that delivers a very different output for even very small variations of the input. So, for instance a hash of a book to which only one letter has been added or removed will be a completely different number that the hash of the original book. It is also a one-way function: it is very easy to compute the hash given the data block, but impossible to recover the data block from the hash. It is also very hard to force or to fabricate a specific hash (lets say all 0s). You can only do that by trial and error.
Now you are ready to understand how the Blockchain works. It is basically a distributed ledger (or account book) where transactions (or other kinds of deals, contracts, certificates, votes or pledges) can be recorded. This record cryptographically certifies the identity of the agents involved (whether human or digital) and the content (e.g. the amount of the transaction) using asymmetric public key signatures. All of this happens in a manner that can never be erased or manipulated. The basic unit of the Blockchain is a block of transaction data that includes the hash of the previous block. This way blocks get chained, and thus the name “blockchain”. You can think of it as pages of an accountant’s book. Each new page includes the hash or summary of the previous page, and the hash of the current page is computed with that of the previous, so you cannot fake a page of the book without changing all the subsequent pages. In order to avoid these fakes, a speed-race is carried out between the computers belonging to the network. The goal is to compute the hash of the current block. In order to make it mathematically difficult it is demanded that the hash be below a certain number. There is no way to predict what the hash of a block will be and the only way to force a specific hash is by adding a random number at the end of the block (this is called a Proof of Work). As a result, adding a new page to the Blockchain has a high and unpredictable computational cost. This way Blockchain makes possible to maintain a consensus (or distributively agreed) version of the ledger while avoiding different kinds of failures and malicious attacks.By now you must already be familiar with the Blockchain technology, and be ready to understand its potential. One of the most promising improvements of the Bitcoin Blockchain is Ethereum. It defines itself as a “decentralized platform for applications that run exactly as programmed without any chance of fraud, censorship or third-party interference”. The project redesigns a new Blockchain to make of it a distributed computer, overcoming some of the limitations of the Blockchain that was originally conceived for Bitcoin. With Ethereum, applications can be made to run on the Blockchain. You can use the Blockchain as a distributed server, as a cloud that nobody owns and that will execute exactly the program you tell it to run (without fearing censorship, corruption or third party manipulation). Using the Blockchain as a computing grid has a cost: you will need “ether” (a new crypto currency) to buy Gas or cryptofuel to run your application. Ethereum also allows you to create, buy or sell ether.
If you still think all this is crazy idea that nobody will start using… why don’t you check the statistics board of Ethereum?
Finally, you might want to read the original paper by Satoshi Nakamoto that created the Blockchain and Bitcoin in just 8 pages! Next, you can read the white paper that explain the internal workings of Ethereum, it overviews the uses and limitations of the Bitcoin Blockchain and explains the modifications and improvements, as well as future uses, that Ethereum makes possible.
Critical resources are also important to consider. Understanding the underlying technology is essential but additional knowledge, context, etc. is also relevant to understand the consequences, governance evolution and the social implications of these technologies.