The Importance of Being Blockchain

Blockchain is one of the top buzz words today along with AI, IOT, and big data. Many call Blockchain the ‘new Internet’. Is this analogy relevant? This post is my attempt to find the place
Blockchain occupies in the modern IT landscape.

Technologies to handle the information (aka Information Technologies or IT) had arisen and evolved around serving the business needs of the corporations and governments. The central part of any
information system is the database which literally stores the data. The data stored in a traditional database is accessible and changeable by the users of the system according to their ‘access
rights’. Then there are ‘super users’ who are administrators of the database itself as well as sysadmins of servers on which the database physically resides. These users have the highest level of
access and administer other users rights.

Banks and financial corporations were among the earliest users of IT and therefore they had to figure out how the money can be put into the information systems. Their solution was to record
account balances in the database as the numerical values against the account numbers. And since any super user could change any value in their database (and potentially create the money out of
nothing), financial information systems had to be isolated from everyone's access by additional security measures.

At the same time, the business, which needs to be served by IT, is essentially the flow of transactions exchanging the goods or services for money. Traditional IT were only able to partially
serve these transactions as the systems managing the money are isolated from everything else.

Here comes Blockchain.

The first realization of Blockchain, known as bitcoin, totally changed the way the money is accounted in the information system. Instead of the numerical balance in a database, every currency
unit is represented as a promissory note which is digitally signed by the owner whenever they want to pass it to anyone else. Furthermore, there is no single database: the copy of the ledger,
which includes all the notes with the endorsements, is stored on many servers. Any change to the database state is only possible if the majority of the servers approves it.

The digital signatures used to sign the endorsements are derived from asymmetric cryptography scheme hence the public key is essentially the account number while the private key is the only mean
to sign the endorsement. The traditional form of the ledger which is the account number with associated balance can be therefore derived from the Blockchain database by summing up all the
endorsements made for a particular account.

This is not all the beauty of Blockchain. What makes it complete is smart contracts. The smart contract is the computer program which can be associated with the particular account of the ledger
described above. Whenever the transaction touches the account containing smart contract, it executes, automating some pre-programmed business logic. Therefore, now it is possible to create the
application which automates both sides of the business transaction: exchange of the product for money.

Apart of blending the money into the information systems, Blockchain has many intrinsic features resulting from its design. The database is naturally distributed hence there is no single point of
failure as well as no dependency on the single point of trust. All the changes are tracked and recorded, therefore making it possible to see the state of the data at any given moment in the past
which gives unprecedented capabilities for audits, research, and investigations. Last but not least, all the changes are authenticated with the digital signature of the change initiator, which
adds non-repudiation to any system built upon Blockchain. This all allows for an unprecedented levels of access, without the risks of erroneous or malicious interference from the super user.

Is Blockchain similar to Internet? Probably not as it is not enabling so many types of new businesses. It is obvious, though, that Blockchain has a great potential in corporate information
systems as those can now be more reliable, efficient and secure.

Dmitry, I love your explanations - thank you. Removal of "Turing machines" vs previous post is massively welcome - while it might have been factually correct "computer programme capable of executing
business logic" is a lot more layman reader friendly.
Can you cover the differences between different blockchain techs people talk about? Like what is Etherium best for, Hyperledger, R3, bitcoin itself ... looking forward to it!

#2

ArtjomA(Wednesday, 29 March 2017 17:03)

Hi, Dmitry! Great article. My two cents. At the current moment, the smart contract is not a program. It looks like a script or trigger in DB paradigm. Maybe in future, we will see full programs or
container environment aka Docker.