Blockchain: what should we build a case?

    The whole history of mankind is an attempt to destroy the old order of things and build a new, of course, the best. (Anonymous author)

    In the last article “What should we build a blockchain for?” We figured out the technologies that all blockchains work on. It's time to understand what tasks modern blockchains can solve. To begin, let's look at the analytics of the current state of the blockchain and prospects for the future. As a technician, I am impressed by Gartner, with its many Hype Cycles. The graph shows the blockchain maturity cycle in business at the end of 2018. What conclusions can be drawn?

    image

    Gartner analytics


    • The graph shows that many modern industries are trying to use blockchain to solve their production problems, and every year new industries appear that begin to explore blockchain.
    • However, so far no industry has reached a plateau of productivity or even a slope of enlightenment.
    • Of course, not all industries that are now on their way to the peak of expectations will reach the plateau of productivity, but judging by the mass movement, in 5-10 we will witness the widespread use of a number of cases.
    • And where is Bitcoin, mining and generally cryptocurrency, you ask? Do these technologies bring significant profit? They were on the charts of past years, but this year they already left the productivity plateau in their 10 years.

    The following graph shows the maturity of blockchain technologies:

    image

    What can be said about this graph?

    • Most modern blockchain technologies are also on the wave of discussion. But not because these are new technologies, but because industries are exploring their applicability to their data structure, the volume and speed of their processing, they are looking for ways to use blockchain technology to increase efficiency and reduce costs.
    • By mining cryptocurrencies, the classic blockchain and, in general, by the technology of a distributed registry, interest begins to decline.

    Now let's see for which case studies the industry is trying to use the blockchain. At the end of 2018, Gartner conducted a study and presented its results in a matrix, where cases are listed horizontally, industry verticals, and circles at intersections show how much a particular case is in demand in a particular industry:

    image

    What conclusions can be drawn from this table?

    • Most projects use the blockchain to record, distribute and share data (Shared Record Keeping and Internal Record Keeping).
    • A significant part of projects use blockchain to track the movement of value or the change of its owners (Asset Tracking).
    • Identification (Identity Managment) little by little, but is needed in almost all industries.
    • At the moment, tokenization (Digital Tokens) is not very popular and, surprisingly, the same can be said about smart contracts (Smart Contracts).

    Generalized blockchain scheme


    When drawing a blockchain in relation to any industry, then all the schemes are basically the same: there is a blockchain network, in which participants write and read information using Dapp (decentralized application). All the differences in details, for example, information on the blockchain can be recorded not only by people, but also by devices of the IoT platform (Internet of Things). Consider a generalized scheme using the IoT example, as This is one of the most talked about blockchain applications. Additionally, we will equip the IoT devices with a SIM card for transmitting readings using the mobile network of the telecom operator, or better eSIM, so that you can use arbitrary mobile networks. The mobile network will, of course, be 5G, because Maintenance of IoT devices is one of the main applications of the 5G network. GPS / GLONASS modules let you track location. For the full operation of smart contracts, you must have information from external sources, for example, current stock or currency rates. For this, the so-called blockchain oracles are used. The final touch is an artificial intelligence module for data analysis.Studies say that AI (Artificial Intelligence) algorithms will work effectively on data from the blockchain, because they are complete, consistent, and uniquely sorted by time.

    Thus, we received a generalized scheme of blockchain projects. Now you can write any title to it and turn the scheme suitable for different industries. For example, “Tracking the movement of tanks for the oil industry” or “Production of parts for the automobile industry” or “Delivering farm meat to retail stores”.

    Blockchain + IoT + 5G + GPS + AI


    image

    We pass to specific cases.

    Case Study


    Let's pick up cases for the listed industries and think about which blockchains they can be implemented on. It turns out that you do not need to look for anything, because and there is an actual “ Blockchain Case Library ” with examples and links. It contains cases on the use of blockchain in the following industries:

    • automotive industry
    • government sector
    • extractive sector
    • healthcare
    • Culture and art
    • the property
    • production
    • retail
    • Agriculture
    • telecom
    • transport
    • financial sector
    • energy sphere
    • copyright accounting

    Conclusions from the analysis of the set of cases


    • Of course, blockchain is good at fintech, because transactions and change of ownership of values ​​are the basis of the financial system.
    • It’s logical to use blockchain in cases where there are “supply chains”, for example, transportation of containers. A container appears to be a value that is transferred from one transport company to another. Or, for example, labeling food and tracing the entire food supply chain from farmers to retail stores. In this case, the buyer can make sure that the product is manufactured by a specific manufacturer under specific conditions. Now, such information on the labels can only be taken for a word.
    • The case with identification of people IAM (Identity and Access Management) and the storage of personal data is relevant. With the advent of the blockchain, a solution method appeared, based on the storage of personal data in a distributed registry, and using the Zero Knowledge Proof protocol, a person can decide what data to provide to whom. For example, a classic example is a confirmation that a citizen is 18 years old. Now for this, a passport or rights are used, where the data is located that are not related to the verification itself, such as registration. Using the blockchain, it will be possible to verify that a person is 18, without disclosing the rest of the information.
    • In the same plane lies a case with recording medical data about patients on the blockchain so that they can be transferred between institutions without violating confidentiality. And this is a common feature of many cases, where on the one hand you need to identify people and the ability to freely disseminate information, and on the other hand, you need to protect (encrypt) personal and private data.

    Blockchain and the state


    In many countries, there are government blockchain development programs. In Russia, there is also a program for the digital transformation of the state , in which the blockchain (distributed registry) is considered as one of the areas of development. For the state, the development of blockchain in the following areas is relevant:

    • Creation of registers of property transactions, such as real estate;
    • Creation of registers for recording acts of civil status, for example, for registering births, marriages, divorces;
    • Record on the blockchain the results of elections and votes.

    Blockchain and Telecom


    Cases implemented in the Telecom industry will affect most people. According to TM Forum, for telecom operators, the most relevant application of the blockchain is to solve the following problems:

    • Operators can get rid of intermediaries (clearing centers) in the provision of roaming and make payments directly to each other.
    • Identification of people and IoT devices.
    • Automatic calculation of violations of customer service rules (SLA) based on a smart contract and payment of compensation.
    • Maintain a distributed database of stolen phones.
    • Maintaining a distributed database for MNP (Mobile Number Portability) and getting rid of the intermediary in the form of a centralized database.

    Blockchain Analysis


    For the purpose of systematization, I tried to find the classification of blockchains by generations. I did not find it universally recognized, but everyone agrees that the first generation is Bitcoin, the second Ethereum, but then everything depends on personal preferences. The following classification seems logical to me:

    • First generation (Bitcoin): only supports the functionality of transferring cryptocurrency from one account to another.
    • Smart contracts (Ethereun) and multicurrency (BitShares) were added to the second generation.
    • The third generation allows you to operate not only with cryptocurrency, but also with any digital assets (assets), implement arbitrary business logic, and flexibly configure the consensus algorithm. An example of a universal blockchain is Hyperledger Fabric.

    Let’s and consider representatives of all generations, in terms of characteristics that will help to understand which cases can be implemented on a particular blockchain:
    BitcoinEthereumBitsharesHyperledger fabricExonum
    Blockchain Generation12233
    Websitebitcoin.org/enethereum.orgbitshares.orgwww.hyperledger.orgexonum.com
    Performance in TPS720-3010,000100010,000
    Is it possible to make a private blockchainnotnotYesYesYes
    The number of nodes in the networkMore than 10,000More than 10,000Effectively 20-30 nodesEfficiency is determined by Apache KafkaEfficiency is determined by BFT consensus: 10-20 nodes
    Average transaction fee0.5 $0.1 $less than Ethereumnotnot
    Supported operating systems for nodesWindows, Linux, MacOSWindows, Linux, MacOS, Rasbery PiUbuntu, WindowsWindows, Linux, MacOSLinux, MacOS
    Node deploymentManuallyManually, DockerManuallyDocker-docker-compose Manually, Docker
    ConsensusPoWPowDPoSVoting system used by Apache KafkaBft
    Smart contractNot generally acceptedSolidity programming languagePreset and their number is limited. Append in C ++Programming Languages ​​Go, JSRust
    The programming language in which the blockchain is writtenC ++C ++C ++GoRust
    Blockchain data storage DBLeveldbLeveldbLeveldbgoleveldb - LevelDB in GoRocksDB
    Development and supportSatoshi nakamoto & coVitalik Buterin & CoDan Larimer & CoThe Linux Foundation, IBM, OracleBitfury group
    Limitations on the implementation of casesPerformance and availability of commission.Performance and availability of commission. Suitable for pilots and PoCs.The presence of a commission and a limited number of implemented use cases.Hyperledger Fabric - nothing is limited unless you expect high performance.Exonum limits BFT consensus and high entry threshold, as to implement smart contracts, they must be embedded in the source code.

    Conclusion


    Now the use of any new technology is often presented as a solution to the problem. Therefore, for starters, you need to make sure that in a particular case you need a blockchain. To do this, answer the questions do you need all of the above functionality?

    • Cryptography
    • Consistency and completeness of data history
    • Distribution
    • Decentralization
    • Tokenization
    • Smart contracts

    If not all of the listed characteristics are needed, then, perhaps, it will be more efficient to use technologies other than the blockchain. If you still decide to use the blockchain, then you need to keep in mind the features of the blockchain, which, due to its nature, cannot be changed:

    • Different blockchains have different technical characteristics and limitations, therefore, depending on the case, you need to choose the appropriate blockchain.
    • Depending on consensus, blockchain performance differs by orders of magnitude. And if a particular blockchain is selected, then most likely it will not be possible to “optimize” it.
    • Linear scalability is a common requirement for information systems. Blockchain can scale worse than linearly.
    • The data that needs to be stored can have a structure that reduces the effectiveness of the use of the blockchain.
    • In private blockchains, it is necessary to ensure security no worse than in the used corporate IT systems.

    Due to these limitations, now the blockchain is mainly used in simple cases, in which you need to get rid of intermediaries or to achieve verification of the authenticity and immutability of data among participants who are not under common control.

    In the next part, we will deploy the blockchain in the cloud and see how everything works.

    This is only the beginning!

    All three articles:


    What should we build a blockchain?
    Blockchain: what should we build a case?
    Blockchain: what should we build PoC?

    Also popular now: