Blockchain technology has already gone through a period of formation and hype, dramatic falls and, it seems, has entered a phasepractical reflection and development.
It is a mistake to assume that the blockchain is universal and able to solve all existing problems. The massive closure of ICO projects that raised considerable funds during 2017 is another confirmation of this.
However, for those areas of activity where there is a real problem of trust between users, blockchain can bring additional value.
Consider the feasibility of using blockchain for business, as well as the most popular networks existing on the market.
In which case is blockchain implementation appropriate?
To begin, we will understand the key advantages and disadvantages of this technology. Usually in this place they write about "decentralization", but what does this mean in practice?
Modern blockchain is softwaresoftware installed on many computers, each of which is protected independently. This is fundamentally different from centralized systems, where to change data you need to gain access to only one account. Blockchain makes it possible to organize networks where participants want to interact with each other, but do not want to share security risks. In these networks, it's every man for himself.
Blockchain is applicable when there is somethe number of participants whose interaction takes place in a completely untrusted environment (for example, a group of competing companies, private individuals or branches of a large company). The main thing is the distribution of security risks among all participants.
Such networks can really be“Unsinkable”, because a synchronous attack of a large number of computers is required, each of which is protected independently of the others. The more diverse the protection, the more secure the blockchain.
Therefore, one of the main criteria for using blockchain concerns security:“Does your project require operation in a completely untrusted environment and a complete distribution of security risks?”
If your system design includes“rescuers”, “emergency engineers” and others who can block transactions and execution of smart contracts, you expose a “weak point”, an attack on which can break the entire system.
If you are willing to sacrifice a lot for the sake of network security, and have planned well to protect administrative functions, then the next question will be:“Are you ready to pay for each transaction?”
Free Transactions Allow Any Membernetworks fill the blockchain with useless information that is replicated hundreds and thousands of times. So without cryptocurrency, transaction fees and execution restrictions, a good secure blockchain for public networks cannot be built.
Payment transaction problems are resolved usingadditional functionality that allows some participants to pay for others. Typically, such a luxury is offered one-time and only to new users of the blockchain, but the owners of the system in any case will have to deal with commissions for each transaction.
Next criterion:“Does the business model have mutual settlements and transfer of ownership of certain information from one participant to another?”
Blockchains are networks in which ownership rightsdigital information is transferred from one blockchain account to another. The simplest type of information is a number, so the data in blockchains resembles bank balances. One identifier is one number. The blockchain protects the “balances” and the methods of transferring them between different addresses.
Blockchain mutual settlements can be not onlypayments, and any exchange of digital values (for example, reputation points, information that allows you to access valuable resources, game items).
If your project provides for the exchange of such digital values - the blockchain can be an excellent foundation, resistant to hacking.
Choose a public or your own blockchain?
If you only need to accept payments incryptocurrencies, create an address for payments and solve legal issues. If for the project it is necessary to automate more complex transactions, it is possible to place smart contracts in one of the public networks (about them below), or launch your own blockchain.
Public blockchains
Enough code to work on public blockchainsyour service and smart contracts. Smart contracts are cheaper than the usual database - no need to rent servers and be responsible for the security of user accounts. In addition, public blockchains are more secure: in the event of a failure, the data can be downloaded or transferred to another blockchain.
The disadvantages of the public blockchain includecommissions for transactions in the "native" cryptocurrency of the blockchain. You will not be able to influence its rate or transaction processing speed. Also, at the moment there is no solution that allows you to handle many parallel operations of tens and hundreds of thousands of users, which in turn can provoke a strong increase in fees.
Public blockchains are suitable for projects that require “unsinkability” in any conditions and with fairly valuable transactions in which users are willing to pay for each operation.
Own blockchain
An alternative to public blockchains areblockchains launched in-house. To launch, in addition to your own blockchain code, you need to prepare or make a fork: web services for viewing the blockchain (such as Etherscan), client software (wallets), various tools and interfaces, documentation.
Next is the launch of the test network, eliminationshortcomings, code update procedures and starting the main network. Since the development is conducted publicly, the code will have to be written qualitatively and audited by independent teams.
Another unpleasant propertyBlockchain development is a high cost of ownership: dear developers, tasks that few people have solved for you (therefore, there is not enough documentation and ready-made software), complex testing (it requires a lot of cloud resources and complex test scripts).
Therefore, deciding on your own blockchain, you need to soberly assess your strengths.
Solutions on the market
What decision to take as a basis? The question is akin to choosing an operating system: there are a huge number of parameters, and configuration options too.
First, let's look at a couple of the most reliablesolutions that already work in public networks and are open source. First of all, these are networks that support universal Turing-complete smart contracts, which allow you to automate almost any business process, so Bitcoin does not fall into this category.
Ethereum-based networks
This is the most mature and universal solution,which has been successfully operating for many years and is responsible for large amounts of cryptocurrency. Ethereum has the most developed ecosystem, convenient languages for writing smart contracts, many tools and ready-made algorithms.
In case of any problems, data and smart contractscan be transferred from one Ethereum network to another, and you can choose to host one of the forks. For example, in the case of PoA Network or Loom Network, you will get faster and cheaper transactions.
The Ethereum blockchain is more convenient than Bitcoin: in a couple of clicks you can conduct very complex transactions.
If you have few transactions and users need a high degree of security of crypto assets, then public Ethereum is your choice.
EOS-based networks
EOS is the fastest public blockchain, the mostdeveloped from those using “Delegated Proof-of-Stake” type consensus. EOS allows you to write smart contract systems of any complexity, has a convenient system of accounts and voting for validators.
Public EOS is also called "Chinese Ethereum,"since the main users and validators of this network are in China. EOS has exchanges, various decentralized financial and gambling applications, and games.
Like the Ethereum ecosystem, EOS isa large complex of ready-made software that has already been tested in real conditions. In EOS, everything is developed in C ++, so you can quickly find good developers.
Use EOS if you need a convenient systemaccount management, fast cryptocurrency payments and many different smart contracts. For example, EOS is well suited for servicing payment networks, terminals, ATMs or crypto machines.
Hyperledger
The Hyperledger family of blockchains originallytailored for corporate use. Modern HL projects do not have an internal economy, and are usually used for internal document flow in large companies.
HL is written in Java and built with in mindneeds of corporate clients, therefore, he does not have some advantages of public networks. Nevertheless, the use of a distributed registry may be justified: companies are trying to use Hyperledger for service operations with rare and critical equipment, specialized logistics and internal document management.
Use HL if you need powerful Java logic and you are ready to run your blockchain inside the corporate network.
Parity Substrate & Cosmos SDK
Parity Substrate is a blockchain builder framework that allows you to quickly and easily build your own blockchain (parachain in Polkadot terminology) and run it with your own validators and logic.
Architecturally, the parachain can be considered as a blockchain with one arbitrarily large and multi-functional smart contract, which can be updated and modified.
Substrate-based parachain lets you choose fromready-made modules consensus type, the ability to work with smart contracts and implement complex internal logic. In this case, you get a set of open source tools for users.
Cosmos SDK is a software package similar to Parity Substrate for building your own blockchains with arbitrary logic based on the Tendermint consensus.
When developing the Cosmos blockchain, Go is used, there is also a large number of ready-made software to support the developed blockchains.
Using solutions like Substrate or Cosmos SDK is the fastest and most reliable way to make your own blockchain.
Other blockchains
You can also use new ones for the project.blockchains, which often have only a test network. New projects are a risky way, since there is a very high probability of serious problems in both the software and business parts.
Nevertheless, new solutions often make it possible to solveimportant blockchain issues (Near Protocol, NuCypher, Coda). If the project is relevant to your business logic, it may make sense to rely on its team and code.
Summarize
Blockchain choice today is limited to threethe main blockchains and their forks: Ethereum, EOS and Hyperledger, as well as the designers of Substrate and Cosmos. If the project requires access to public networks, the choice narrows down to two options: Ethereum and EOS. This is not so small, since both solutions have many forks with wider functionality.
If you choose to work on a public blockchain,you will be spared a huge amount of expensive work on developing and maintaining the blockchain. In this case, you can focus only on business logic, interfaces and auxiliary services (such as IPFS).
If you decide to develop your own blockchainor fork an existing one, you should well understand that it is expensive and difficult. A fork in the future will have to be supported, bug fixes applied, forks of related software forked and their code updated as well.
Blockchain technologies are extremely specific and havemany internal nuances. It is recommended that you carefully consider how the blockchain will be used by your project, what expenses you will incur and what it will cost users.
</p> 5
/
5
(
1
vote
)