The words cryptocurrency and blockchain, known only to a few people a few years ago, are now ubiquitous. In this overview article, we’ll take a closer look at how the technology works, how it can be used, and how blockchain can evolve.
In addition, we will share the experiences of companies interested in learning more about the technology, as well as the opportunities for developers to participate in the first NEO competition.
Such public attention can be explained by two factors: the high value of Bitcoin cryptocurrency and the complexity of understanding the essence of the technology. Understanding this “crypto jungle” will help us understand the history of the first digital currency and the underlying P2P technology.
Decentralized networks
There are two definitions of the term Blockchain:
- Replicated distributed database;
- A continuous sequential chain of blocks containing information.
Both definitions are correct in their essence, but do not answer the question of what it is. To better understand the technology, it is necessary to recall what computer network architectures exist and which one dominates the modern IT systems market.
There are a total of two types of architectures:
- Client-server network;
- Peer-to-peer network.
Network organization in the first way implies centralized control of everything: applications, data, access. All system logic and information is hidden inside the server, which reduces the performance requirements of client devices and ensures high speed of data processing. It is this method that is most common today.
Peer-to-peer or decentralized networks have no master device, and all participants have equal rights. In such a model, each user is not only a consumer, but also becomes a service provider himself.
An early version of peer-to-peer networks is the distributed messaging system USENET, developed in 1979. The next two decades were marked by the creation of P2P (Peer-to-Peer) applications. Some of the most famous examples are Napster, the once popular file exchange peer-to-peer network, or BOINC, the software platform for distributed computing, and BitTorrent, the protocol that is the basis of today’s torrent clients.
Systems based on decentralized networks continue to exist, but noticeably lose out to client-server systems in prevalence and responsiveness to consumer needs.
Data Storage
The vast majority of applications and systems for normal operation requires the ability to operate on a set of data. Ways to organize such work a great many and one of them uses the method of peer-to-peer networks. Distributed, or parallel, databases are characterized by the fact that the information is partially or completely stored on each device of the network.
One advantage of such a system is data availability: there is no single point of failure, as in the case of a database located on a single server. This solution also has some limitations in terms of the speed at which the data can be updated and distributed to the network. Such a system would not be able to withstand the pressure of millions of users constantly publishing new information.
Blockchain technology uses a distributed database of blocks that are a linked list (each block contains the identifier of the previous block). Each member of the network keeps a copy of all transactions made over time. This would not have been possible without certain innovations designed to keep the network secure and operational. This brings us to the last “pillar” of blockchain: cryptography.
Cypherpunks
At the end of the 20th century, a community was born interested in promoting anonymity and security on the web through the development of new cryptographic methods. They believed that the only way to preserve privacy online was to encrypt the data. The first attempts by crypto-punkers to develop a digital currency date back to the very early 2000s.
The first version of digital currency was created by Wei Dai and was called b-money. The next attempt was Bit Gold, developed by Nick Szabo. Both currencies had a major flaw – imperfect decision-making among remote subscribers.
The birth date of the full-fledged cryptocurrency, Bitcoin, is considered to be 2008. That was the year when Satoshi Nakamoto, summarizing the achievements of like-minded people, published a scientific work with the description of the main blockchain elements, working principles and mathematical model of the network. From the very beginning, the author emphasizes the goal of the work – to create a new way of irreversible transfer of funds (transactions) between people without intermediaries.
Blockchain technology
After examining the basic components and history of the technology, it is time to finally dispel the myth associated with the word “blockchain.” Let’s look at a simple example of digital currency exchange and how blockchain technology works without computers.
Suppose we have a group of 10 people who want to be able to exchange currency outside the banking system. Let’s consider sequentially the actions performed by the participants in a system where the blockchain will be represented by ordinary pieces of paper:
Empty box
Each participant has a box in which he will add sheets with information about all transactions made in the system.
Transaction Moment
Each participant sits with a sheet of paper and a pen and is ready to write down all the transactions that will take place.
At some point, participant #2 wants to send 100 rubles to participant #9.
To make the transaction, participant #2 announces to everyone: “I want to send 100 rubles to participant #9, so make a note of it on your sheet.”
After that, everyone checks whether participant #2 has a balance sufficient to make the transaction. If so, everyone makes a note of the transaction on their sheets. The transaction is then considered completed.
Transaction Execution
Over time, other participants also have a need to perform exchange transactions. Participants continue to declare and record each completed transaction. In our example, 10 transactions can be recorded on one sheet, after which it is necessary to put the completed sheet in the box and take a new one.
Adding a sheet to the box
The fact of placing a sheet in the box means that all participants agree with the validity of all transactions made and the impossibility of changing the sheet in the future. This is what ensures the honesty of all transactions between participants who do not trust each other.
The last step is a general case of the Byzantine Generals’ problem. In the context of interaction between remote participants, some of whom may be malicious, it is necessary to find a winning strategy for all. The process of solving this problem can be viewed through the prism of adversarial models.
Adversarial Models
By adversarial models we mean the situation of finding among participants a malicious group that would like to exploit the vulnerability of double spending (debiting two accounts and then canceling an honest transaction).
It is possible to distinguish the following categories of models:
- Threshold models. A stable network requires that the number of attackers be less than some value (half or one-third of all participants).
- Computational threshold models. A model developed by Satoshi Nakamoto of using participants’ computing power to select the right block. In relation to blockchain, such systems are based on the Proof-of-Work principle. These include Bitcoin, Ethereum and others.
- Share threshold model. Combination of previous ideas, where computing computers are replaced by some object of value. For example, the cryptocurrency itself serves as a collateral object, which the participant uses to confirm the validity of the block. The next generation of blockchain uses this method called Proof-of-Stake. A prominent representative of such a model is NEO.
- The chosen adversarial blockchain model determines how a new block is rewarded for creating a new block. We’ve already broken down that a blockchain is a distributed database made up of blocks. The complexity of adding new blocks is determined by the adversarial model:
- The proof-of-work model uses the processing power of the devices of the network participants. The group of devices of the first to create a new block receives a reward in the form of cryptocurrency (this is what mining is).
- The proof-of-ownership model involves using users’ assets as collateral to confirm the honesty of all transactions in the new block. The remuneration is received by all participants in an amount proportional to the pledged assets.
- Broadly speaking, a key feature of blockchain is the elimination of the human factor – the responsibility for the validity of transactions falls on the shoulders of mathematics and computers, which are much more reliable.
You can read more about the principles of blockchain technology in the article WTF is the Blockchain?
Use cases
Cryptocurrencies were originally intended to create a cryptocurrency that would be independent of third parties and would have the properties of cash currency in the electronic world: instant exchange of funds for a good or service. Blockchain technology was developed for this very purpose, which allowed for a rethinking of the approach to solving problems in other spheres.
Payments
The use of cryptocurrency as a payment instrument was the first application of blockchain technology and has become widespread in black and unregulated markets. The goal of the creators of the first digital currencies has been achieved, but it is not the preferred method for the average consumer.
Blockchain is inherently much more convenient for sellers than buyers:
- The inability to undo a transaction and get money back for a substandard product or service;
- the only thing that provides security and access to an electronic wallet is a private key, if it is lost, the funds are lost forever.
- Smart contracts
- Blockchain technology allows to create on its basis distributed applications, the code of which is executed on machines of network participants.
The principle of contracts is very simple:
If A happens, execute B.
This allows contracts to be written as executable code that will be executed in any case: it is protected against human error and rule violations. Errors in the development of the smart contract interpreter can be avoided by using open source software.
Data storage
Because blockchain is essentially a distributed database, any information can be stored in it, not just transaction records. This approach will ensure that information is reliable and available to all network participants at all times. However, in blockchain-based distributed storage systems, data is encrypted and distributed across nodes in the network, making the process of changing data very slow and unreliable.
Voting
The principle of eliminating the control device between remote subscribers allows for a blockchain-based, fair voting model where the results cannot be rigged.
For example, the Ethereum website has detailed instructions on how to set up a distributed autonomous organization based on its network. The resulting distributed application can be used to manage assets of not only Ether currency, but also any other currency.
The applicability of blockchain technology
It is important to understand when blockchain is really necessary and not to try to use it in absolutely all areas. Although such a desire is understandable – the technology itself is incredibly curious and holds great promise.
Many critics of blockchain say that in 10 years of its existence, no one has come up with a killer app – an application that would conquer the market and become ubiquitous. There may never be a blockchain-only system like this, but there will definitely be a niche and a niche application.
Development and support by companies
VMware
Many companies are interested in exploring and developing blockchain technology. For example, VMware has created an entire research department to study the impact of blockchain on the field of financial technology in general.
They have formed their unique vision, which is based on five points:
- Private distributed storage without proof-of-work (PoW);
- High-speed data replication;
- A world of multiple blockchains rather than a single network;
- Transaction support with cross-transaction capability;
- built-in ability to regulate membership, not just authX/authZ.
We highly recommend reading the publications by VMware researchers to anyone who wants to learn more about how blockchain works and the future of this technology.
In addition, an out-of-the-box BlockChain on vSphere solution is available for users of VMware services, which allows you to create your own network in a few simple steps.
HyperLedger
In 2015, the Linux Foundation group founded HyperLedger, an umbrella project for open source blockchain software and related tools, to support the collaborative development of blockchain-based distributed ledger technologies.
The HyperLedger project also has its own research center, which accumulates the experience of many companies, from the consulting and financial sector to IT giants.
NEO
NEO is an open blockchain for the smart economy. Its creators aim to develop an ecosystem of smart contracts based on their network.
NEO is based on the Proof of Ownership (Proof-of-Stake) model, which makes it possible to achieve up to 10,000 transactions per second. Neo cryptocurrency is used as collateral and NeoGas is used to pay transaction fees, which is created when new blocks are received and distributed among Neo owners.
Contest
At the moment there is a contest for NEO developers with a prize fund of $490000 in partnership with Microsoft. Participants are invited to submit a prototype of an application that uses the capabilities of NEO smart contracts.
It should be noted the support of several programming languages (C#, Python, Java), which allows to use blockchain possibilities in already existing systems and not to spend time learning a new language.
It is possible to implement your own private blockchain based on Neo. The creator of the network immediately gets 100 million Neo at his disposal and can use them as currency for applications or other purposes. A minimum of 4 machines are required to maintain and initially run the network, which can be created in the same private cloud.
Future
In the realm of financial instruments, Bitcoin, being the first mass cryptocurrency, has certainly shown how you can play by the new rules without intermediaries and management from above. Perhaps even more important, however, was the creation of blockchain technology.
As we discussed above, blockchain, by its very nature, is not the answer to all problems, so most of the newly minted companies adopting this technology are likely to disappear in the near future. But it is blockchain as a technology that allows remote participants to interact without a supervisory authority, and wherever there is a demand for it, the technology will find application.