Blockchain Overview: Key Technologies and Challenges

Source: Internet
Author: User
Tags blockchain technology blockchain applications blockchain system blockchain network bitcoin blockchain

From a technical point of view, the blockchain involves a variety of fields, including distribution, storage, cryptography, psychology, economics, game theory, network protocols, etc. The key technologies that are currently considered to be resolved or improved are listed below points.


Cryptographic authentication technology

How to prevent transaction records from being tampered with?

How to prove the identity of the counterparty?

How to protect the privacy of both parties to the transaction?


Cryptography is an effective means of solving these critical problems. Including hash algorithm, encryption and decryption algorithm, digital certificate and signature (blind signature, ring signature).

The application of blockchain technology will likely stimulate the further development of cryptography, including the generation of random numbers, security strength, and performance of encryption and decryption processing. But this will depend on the further development of mathematical science and the breakthrough of next-generation computing technology.

Note: The SONY PS3 private key was cracked. It proves once again that even a sufficiently secure algorithm, if not properly used, is just a piece of paper.


Distributed consistency

This is an old topic and there are a lot of research results (Paxos, Byzantium, etc.).

The core lies in how to solve a change in the network is consistent, is recognized by everyone, and this information is determined, can not be overthrown. This problem is quite different in the public anonymous scenario and the scenario with permission management.

The Bitcoin blockchain considers the worst guarantees in a public anonymity scenario. The Proof of Work strategy was introduced to circumvent the malicious destruction of data by a few people, and the probabilistic model guarantees that the last longest chain that everyone sees is legal. In addition, there are equity-backed PoS, DPoS and Casper. These algorithms are based on the game of economic interests, so that the maliciously destroyed participants lose economic benefits, thus ensuring the cooperation of most people. At the same time, it is confirmed that it must be probabilistically guaranteed after the generation of multiple blocks.

The wider blockchain technology introduces more consistent techniques, including the classic Byzantine algorithm, to solve deterministic problems.

Consistency issues will be a hot research topic for a long time. The core indicators will include fault-tolerant node proportions and convergence speed. A series of algorithms such as PoW theoretically allow less than half of the uncooperative nodes, and algorithms such as PBFT are theoretically allowed to not exceed 1/3 Uncooperative node.


Performance

How to increase the throughput of the transaction while reducing the confirmation delay of the transaction.

Currently, the open bitcoin blockchain can only support an average throughput of about 7 per second. It is generally considered that for large transactions, the secure transaction confirmation time is one hour. As long as the confirmation of the small transaction is broadcast to the network with the transaction service fee, there is a high probability that it will be finally packaged into the block.

Unlike the traditional distributed system, the blockchain system cannot be extended by simply increasing the number of nodes. In fact, it depends largely on the processing power of a single node. High performance, security, stability, hardware-assisted encryption and decryption capabilities will be the core elements to examine node performance.

On the one hand, a single node can use high-performance processing hardware, while designing optimized strategies and algorithms to improve performance; on the other hand, a large number of high-frequency transactions are placed outside the chain, and only the blockchain is used to record the final transaction information, such as lightning. Network, etc. Similarly, the ideas of side chain, shadow chain, etc. have some reference significance at the current stage. A similar design can easily increase transaction performance by 1-2 orders of magnitude. In addition, if the alliance chain is adopted, the design can be optimized under certain trust premise and interest constraints, and performance can be improved.

At present, the open source blockchain itself has achieved common configuration at the platform level, and the transaction throughput of hundreds of transactions per second per client (refer to the performance evaluation data below), the optimistic forecast will soon break through the baseline of thousands of times per second. However, there is still a big gap between the tens of thousands of peaks per second of the existing stock exchange system.

In addition, there are some areas that can be optimized from engineering design and platform deployment.

Note: The VISA system has a processing average of 2000 tps, a nominal peak of 56,000 tps; a payment system has a processing peak of more than 85,000 tps; and a stock exchange claims a processing average (peak) value of around 80,000 tps.


Scalability

A common distributed system can extend the processing power of the entire system by adding nodes.

For blockchain network systems, this problem is not that simple.

Each core node participating in the maintenance of the network must maintain a complete storage and handle the smart contract. Therefore, the total storage and computing power of the entire network depends on a single node. Even when there are too many nodes in the network, the performance of the entire network may be delayed due to the consistency of the process of achieving the consistency. Especially in public networks, the problem of a large number of low-quality processing nodes will be more obvious.

Some of the more straightforward ideas are to relax the restrictions on each node that must participate in the complete processing (but at least some of the nodes need to cooperate to complete the processing); while minimizing the processing of the core layer.

In the alliance chain mode, a high-performance node can be specifically used as a core node, and a relatively weak node is used as a proxy access node.


Safety

The most popular application prospects for blockchains are financial-related services. Security is naturally the most discussed and challenging topic.

The blockchain is designed based on existing mature cryptographic algorithms. But can this ensure its safety?

There is no absolutely safe system in the world.

The system is designed by people, and the system is also operated by people. As long as someone is involved in the system, it is prone to loopholes.

Can refer to the famous hacker Mitnick's "The Art of Anti-Deception - The Experience Sharing of World Legendary Hackers", introducing a large number of actual social engineering fraud scenarios.

There are several aspects that are difficult to escape.

The first is legislation. How to regulate the blockchain system? Is the attack blockchain system a crime? Attacking the banking system is to bear the consequences. But there is currently no legal protection blockchain and implementation based on it.

Second, potential vulnerabilities in software implementation are unavoidable. Considering that openssl has been used for decades, it has such a low-level vulnerability, and the source code is under everyone's eyes. There has been a shackle behind this, which makes people think about it. For the financial system, even small or small vulnerabilities can cause incalculable losses, both on the client side and on the platform side.

In addition, all transaction records in the public blockchain are publicly visible. People who are engaged in big data have started to get excited. Indeed, there are quite a few things that can be analyzed here, and the scale is large enough and the influence is big enough... In fact, there are documents that prove that Bitcoin blocks The chain's transaction history is ultimately traceable to the user.

There is also a complete distributed system. The public blockchain lacks an effective adjustment mechanism. Once it is running, it is difficult to correct problems. Even if it is to make it fairer and more perfect, as long as some vested interests are combined, it cannot be joined. This casts a shadow over the value of Bitcoin itself.

In addition, smart contract applications running on the blockchain may be varied, there must be a way to conduct security control, and mechanisms need to be probed before registration and operation to avoid malicious code corruption.

On June 17, 2016, a DAO system vulnerability was exploited, directly resulting in a $60 million digital currency being acquired by users. Although the reflection on this matter is still in progress, the facts prove once again that when designing and applying based on blockchain technology, it is necessary to carefully design and verify.


Database

The block information in the blockchain network needs to be written to the database for storage.

Observing the application of blockchains, a large number of write operations, hash calculations, and verification operations are quite different from traditional database behaviors.

At that time, people observed that the Internet applied a large number of non-transactional query operations, and designed a non-relational (NoSql) database. So, can you design some special targeted databases for these characteristics of blockchain applications?

Key database such as levelDB and RocksDB, with high random write and sequential read/write performance, and relatively poor random read performance, are widely used in blockchain information storage. But for now, database technology for blockchain is still one of the technical difficulties that needs to be broken.

The author believes that there will be a more targeted "BlockDB" in the future, specializing in new data services like blockchain, where each record will include a complete block of information, and naturally with history. Information is associated and cannot be modified once written. The smallest unit of all operations will be one block.


Integration

For a long period of time, new business systems based on blockchain will coexist with existing centralized systems.

How do the two systems coexist, how to divide the work, and how do each other's business transactions pass?

These are all very pressing issues. This problem is not solved well, it will be a great obstacle to the landing of blockchain technology.


Other

The application of blockchain has also brought new thinking and new demands on many issues.

For example:

  • The legality, security and enforceability of smart contracts;

  • How to map real contracts and treaties into electronic contracts;

  • Scale and migration of distributed systems;

  • New challenges to storage systems, especially performance.


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.