Evolution of the blockchain
Blockchain applications are part of a constantly evolving world, a technological revolution that is changing our habits, slowly, but surely, just like the Internet boom.
The Internet has enabled anyone, anywhere in the world, to share anything they wish with other users connected to the network. The word “sharing” has thus begun to find its widest possible meaning and its maximum development, since the Internet has enabled (and is now more and more enabling) large-scale sharing of documents, videos, information, news …
Everything is becoming faster, anyone may access all kinds of information, new work fields are opening up, and working remotely is becoming truly productive.
The value of blockchain applications
But something is missing: with the internet, “sharing” means “duplicating and sending” anything for free. When you share, you are not sharing the original, you are making a copy and sending that copy. Sounds nice, doesn’t it? An example: you are a software programmer, you create a mobile-phone app, you share it for free, it is duplicated several times without you being able to trace the duplicates and deactivate them: initially it can be exciting, but then you quickly realize that you are not earning anything, yet you must also make ends meet. Your work has lost its value. You have failed to “Share Value”.
This is the case for any professional, a Public Body, a company…
That’s why the blockchain is even more important, not only in theory but above all in blockchain applications.
In the past, several attempts have been made to deal with the issue, such as by introducing user licences or similar systems, without concretely solving the problem.
Today’s revolution lies in the ability for anyone to “Transfer Value“. To be able, that is, to protect the value of what we have created (a document, software, a consultancy, an article…), and to be able to transfer it to someone else in a secure, traceable way, even documents, regardless of their nature: accounting, administrative, medical…
That’s where blockchain applications come in. This is why the technology has caught the eye of major companies, as well as the attention of nations, including Italy.
It was announced in February 2019 that the Italian legal system had approved the legal value of the Blockchain: the Chamber of Deputies gave the final green light to the relevant delegated legislation – “DDL Semplificazioni” – which specifically includes a chapter on Blockchain.
Voting, supply chain management, sports such as football, IoT, interbank systems, decentralised payments, insurance systems – we could go on.
- Why is Blockchain taking its place in Society so quickly and inexorably?
- Is it just a passing fancy or will it substantially change all of our lives?
- Is this going to be good or bad?
- Will it really be useful in everyday life by simplifying it, or will it complicate it?
- Will it bring us tangible benefits?
- How can the Blockchain be used by anyone, citizens, professionals, companies, the State and so on?
Well, I am not going to keep you guessing any longer.
A question of trust.
The most famous Blockchain so far is that of Bitcoin – you may have heard of it – developed by Satoshi Nakamoto (to this day, we do not know for sure if that is a real name of the inventor or if it is rather a pseudonym, created perhaps to mean the group of people who developed Bitcoin).
The basic objective of Satoshi Nakamoto (as of all subsequent Blockchains) was simple: to create a system in which the problem of trust, the fear of granting trust to a stranger and then sharing “value” with them was solved. This is because it is precisely through trust that numerous relationships among individuals entering into agreements for their own good are built.
We would all like to be able to trust everyone all the time, freely transferring value, without fear of others, without necessarily having to rely on centralised, referential systems, with the risk of not getting the right treatment compared to other people who may not actually behave reliably.
We would all rather not face the dilemma of trust.
Trust in real life
Trust is a problem that we all have when we buy a house (value) we must trust the people who are selling it, for example: the notary who draws up the deed, the surveyor who values the property.
When we choose a Bank with which to hold our salaries or pensions (value), we must have trust in the Bank’s employees, its manager and their security systems.
When we can finally enjoy a holiday (value) with our family or friends, we have to trust the tour operator, the airline, the taxi we will require.
When we go shopping and decide to buy a nice food product (value), when looking at the labels, we often have to trust the product’s origin, its freshness, its originality.
You may have noticed that we rely exclusively on centralised systems, where exclusive control is in the hands of a single body or person, which would be capable, even unintentionally, of damaging users or be liable to systemic failures exploitable by malicious hackers, systems that only manage to enforce their rules on everyone with great difficulty.
Descriptive elements of the Blockchain
That is why the Blockchain and its blockchain applications were first conceived and then built:
- Security: it is based on shared, decentralised, distributed and highly encrypted databases.
- Immutability: it guarantees the tamper-freedom of the transactions it contains.
- Transparency: being based on a system of protections with private and public keys that guarantee the users’ privacy and the transactions’ traceability; the encryption guarantees security, whereas hashing guarantees immutability, but it is still a shared register, open to all, in which everyone may participate and check everything. Example: You can see that 2 users (whose identity is protected by their keys) have made a transaction.
- Consensus-based system: this is the element that really distinguishes it; technically, it consists of the complex work that the Miners perform (the Miners, those who support the system and make it work), which I will tell you about in a few lines. For the especially curious: “Proof Of Work”, “Proof Of Stake” and so on.
The security of the encrypted system.
Encryption in the Blockchain
Encryption is a key element that makes the Blockchain network even stronger: symmetrical encryption was introduced well before the Blockchain, but encryption in asymmetrical mode is used in it to create a double-key system that is very hard to decipher but can be easily verified.
The Blockchain in real life
Let’s now make an example of a blockchain application in real life:
“Irene and Alex decide to exchange a good: Irene is selling her car to Alex. This is a transaction, and this is what happens in the Blockchain:
- Irene and Alex access software such as an app on their cell phones;
- Both Irene and Alex have (on the app) their own public address (you can see the public address as a “user location within the Blockchain”: if Irene has to send something to Alex, she will know exactly where Alex is in the Blockchain thanks to Alex’s public address);
- Irene creates a real transaction containing information such as:
- Alex’s public address
- The price of the car
- Various bits of information about your car
- Some documents that prove her actual ownership
- A “Time Marker” (called TimeStamp): nothing complicated, this is just the indication of the date and time. But it is a fundamental element of the Blockchain that guarantees security, along with the other essential elements.
- Any other elements that Alex (the buyer) and Irene (the seller) might include.
- The transaction then comes about through two essential elements:
- The parties’ private key (not something outside the system, but a digital key created inside the system and managed with it), used to electronically sign the transaction, ensures with the utmost certainty that the person who has used it is indeed the owner. It will not be shared by the respective owners but will be kept privately by them.
- The public key of the parties is the public address, what is needed to “locate” users in the Blockchain – see it as your IBAN, which you can share for anyone to find you, should you so wish.
- The transaction, once brought about and concluded, becomes part of the so-called block, from which the name “Blockchain” is derived.
So far everything is clear, simple, swift and secure, as you have read, but let’s go further. “
The block: the link between Blockchain, block and transaction.
A block is simply the (digital) container in which all transactions are contained. Think of it as a vault of an extremely secure bank (highly encrypted), but accessible to everyone, from any device, anywhere in the world. Therefore, all users (like Irene and Alex) who perform transactions running on blockchain applications will see their transactions concluded and secured within the Blockchain blocks.
Do you remember the mathematical and scientific rules I was just telling you about? Well, one of those rules is precisely the size of the block: within in a block, a limited number of transactions from a limited number of users will occur. You are probably beginning to understand once you have exhausted the space inside that block, it is closed and secured (encrypted) and a new block is opened, containing new transactions with new users… and the cycle repeats itself. Anyone can perform any number of transactions, and the blockchain will evolve accordingly.
Checking, encrypting and closing blocks
These blocks will not be opened and closed randomly: a further rule is the one assigning tasks. The blockchain system gives the miners the task (from the get-go) of finding new blocks, checking transactions and including the transactions within the blocks, encrypting both the transactions and the blocks themselves, thus closing the new block. And so on. These are all actions that miners perform mathematically, that is, based on the same rules valid for all and on their own calculating (computing) power that they make available for the entire system.
The block forms the blockchain that is then distributed
Chain of blocks: each block is mandatorily and mathematically linked to the previous one as well as the next one. The Blockchain, thus formed, is now shared throughout the distributed system network: if there are 10,000 parties in the network, the blockchain will be immediately distributed to all 10,000. The more time passes, the greater the number of parties, the greater the security of the entire system: this is because the distribution of the system among all parties is specifically performed so that any hacker, in order to damage the system, is forced to hack all the databases at the same time. Unlike centralised systems, where the hacker only has to attack one database.
The “parties”: who are they?
The strength of the distributed database
The answer is simpler than it seems. Do you remember what we just said above? A key element differentiating the Blockchain from a centralised system is the fact that there is no single central database, but there are as many databases as there are parties in the Blockchain network, which is what makes it strong. These databases are authentic copies, i.e. all original, since they contain, all of them, the same data updated at the same time.
The relationship between Nodes and Databases
These parties are called Nodes and they all have the complete database updated to the last transaction, up to the latest block. This is because all databases have to be equal to validate the blockchain.
If it was already difficult for a hacker to attack the blockchain (thanks to encryption); now, with the addition of the “distribution” element, it is even more so.
Generally speaking, several types of nodes exist, depending on the work they do, the type of Blockchain and the governance chosen (system rules), but to make it easier, just think of dividing them into two large groups: system nodes and operational nodes. Whereas the former mainly perform actions programmed by the company that created them (e.g., Bitcoin, Ethereum, etc.), the latter are basically the Nodes providing their computing power to create and secure the blocks and blockchain: Miners.
Hashing in the Blockchain
The link among blocks
Where blockchain applications are concerned, each block is linked to its previous and subsequent block by means of a hash code: the hash has the task of protecting the block and uniquely identifying it throughout the blockchain. This means that no block may have the same hash.
This hashing function is performed by the Miners themselves.
The hashing function
A hash is a function called “control code”: comparable to a digital fingerprint. It is used both to ensure that the block is intact (i.e., not badly built, with errors or tampered with) and to make the mining procedure work.
With hashing, the miner will try building the block in a specific manner.
Given an input (i.e., a set of data entered), the hash is created.
Hashing in action
Put simply: the block will contain information (transactions) through which a procedure will be launched that will generate the hash code. The procedure is automatic, it is as if you entered all the information (transactions) of the block in a funnel that translates them all into a code. Different information cannot generate the same code, even if it only changes by a single comma.
Why this procedure? If any information inside the block (e.g., a transaction) were to be modified, the result would no longer be the same hash. This is why the blockchain is immutable: it cannot be modified, because all the miners would notice it and therefore would not approve the operation. So this is an additional security system.
In addition: the hash that serves to close a block also “owns” the hash of the previous block, so even the order of the blocks is immutable.
Fun fact: the hash was created in the 90s by the NSA, the National Security Agency of the United States of America for data-security purposes, before being used in the first blockchain in 2008.
The blockchain needs gamification to keep Miner motivation high: the Token
Examples of tokens
In the blockchain, the Token is comparable to an instrument that has been given a function from the start – here are some examples to explain. Think about when you were little and you used to play games at the bar: to play you had to buy a token, which you then inserted in the game, thus automatically becoming able to play (function). Or do you remember the old phone card (tokens) used in phone booths? You used them to make calls (function).
The value of the token
The tokens in question have an intrinsic value (according to the rules established by the network governance) and have a pre-set function that can be summarised as follows:
- Buying a good or service or paying for Miners
- Exercising a right with respect to counterparties (for future payments, ownership over an asset, right to receive a payment or a specific service)
- Mixed, for example a voting right.
Unlike a cryptocurrency (coin) that is used to make payments like the Euro in ordinary life, the Token is an instrument that can have various pre-set functions.
The Miners are thus the “Professionals” of the Blockchain network: it is essential that they are remunerated for the work they do.
Smart Contracts in the Blockchain
History of Smart Contracts
Not all Blockchain applications have smart contracts. They represent a further blockchain application, an additional element providing additional capabilities to the blockchain, new features, based on the rules chosen.
They are not that complicated: they were conceived in the ’70s and have been used since the ’90s under different names.
The main requirement they were designed for was that something was needed to help programmers activate or deactivate software licences in specific situations. As you would probably expect, the basic idea was “to disable a licence after a certain period of time has elapsed” or under pre-determined and then automated conditions. But, despite the introduction of these systems, the definitive resolution of that problem was never achieved, since they were used in isolation, not in a Blockchain context.
Absence of human intervention
From the very beginning, this was the objective pursued in relation to developing these instruments. To this end, it was clear that it would be necessary to codify an instrument which, on the basis of specific rules of action or behaviour, would give rise to wholly objective (digital) reactions, detached from human intention and automatic.
Human intervention in the design
This is why the precision of upfront human intervention is essential in drafting the Smart Contract, be it in creating its governance, defining its scope, or outlining the intervention type and so on.
Definition of smart contract – Nick Szabo
The expression “Smart Contract” was created in 1995 by Nick Szabo (one of the first minds behind the “blockchain” system): “A smart contract is a computerised transaction protocol that carries out the terms of a contract. The general objectives are: to meet common contractual conditions (such as payment terms, …), to minimise both intentional and accidental disputes, as well as the need for trusted intermediaries. Related economic objectives include the curtailment of fraud losses, arbitration, court costs and other transaction costs. (source: Wikipedia).
Smart Contracts in the Blockchain
Pretty clear, no? Now insert within the smart contract in a Blockchain. Can you imagine what would happen? Any kind of agreement or contract that we make every day in ordinary life could be safely brought to Blockchain and could thus be enforced automatically, without any human intervention, without wasting time and money. Any “action” that we perform or could perform could be entered into an automated system.
Think of it being used in the Public Administration.
It could greatly simplify all areas, facilitating operations such as sending data, digital identities, tackling crime or tax evasion, thanks to the ease of retrospective control.
Think of it as being used in Music.
Nowadays, music is bought/shared over the web. This often happens unlawfully. Oftentimes, rules such as copyright are not easily enforced, which entails that a huge amount of money is lost. With a Blockchain system based on Smart Contracts, all this would be handled in a much better way.
Think of it as being used to manage Electricity.
Imagine you were both the producer and the consumer of electricity. Surely, like the rest of us, you might have always wondered why you are often forced to pay exorbitant electricity bills. Therefore: an automated system based on precise rules for calculating actual consumption alone (not assumed), would allow the cutting of waste from the producer to the consumer. What if, with smart contracts, you could even become a producer?
Think of it as being used in Healthcare
Have you ever thought about how much more streamlined it would be to be able to manage doctors, visits, and patient data out of such a system? Speed in carrying out examinations and analyses, in viewing reports, ease for the general practitioner in retrieving the records of their Patient who is undergoing customised treatment.
Think of it as applying to Banks and digital payments.
It would cut the costs that the Banks have to bear for the use of obsolete management systems and thus also the commissions that are consequently passed on to the customers
Think of it as applying in high-tech sectors such as Agrifood and Industry 4.0.
Traceability, transparency, supply-chain management and logistics; in other words, “food certification”, control of raw materials and packaging. Think of the enormous savings that companies would achieve, the greater security that the consumer would have… thanks to the ease of backward control.
All this should certainly not be read as a catastrophic development that will eliminate professional figures such as notaries or institutions such as banks. This revolution will bring about enormous simplifications and benefits that will only streamline and facilitate the work of those directly involved, such as the professionals just mentioned.
To sum up.
The blockchain community defines the 3 structures of centralised, decentralised and distributed as follows.
The 3 macrosystems
As you’ve learned, there are now three types of macrosystems:
- Distributed DLT
This is the classic system, the one you come across most often in ordinary life: it is the system in which the concept of “trust” is bestowed upon (you delegate your trust) a central body and managed exclusively by it, in a “one-to-many” relationship. This is usually an authority that is recognised for its central role and thus also for its centralised power.
This looks a lot like the centralised system, but it is as though it is a “slightly delocalised centralised” system. As you can see from the image, there no exclusive (central) focal point, but rather several focal points, which are also managed with the “one-to-many” mechanism. Therefore, the classic single central subject is replaced by many small single central subjects.
It is a system having neither one nor several focal points. As you can see, it comprises neither one nor many centralised entities. Here, what is important is not centralised, but distributed. Better still: trust is no longer delegated to a centralised body but is distributed among all the subjects that participate in this grid, the network.
That is why the material handled in blockchain is based on the most decentralised and distributed sharing, so that this system may ensure the highest security, the most immutable and tamper-free existence of data and transactions, but at the same time the highest attainable privacy of its users, according to the rules chosen to develop its governance.