Abstract:
With the rapid development of e-commerce and network finance involving the Internet, hundreds of millions of online transactions are being carried out on the Internet every moment. Guaranteeing the security of these transactions and realizing the secure storage, exchange, and sharing of massive transaction data have become paramount. Blockchain is a practical technology recently proposed to solve the above problems. Through P2P network technology, distributed ledger technology, asymmetric cryptography, consensus mechanism, and smart contract technology, blockchains can ensure data integrity, nonrepudiation, privacy, consistency, and other security protections. Hence, it has attracted wide attention from academia and industry in recent years. Starting from the design and demand of blockchains, this paper first expounds the basic concepts, features, and typical architecture in the current blockchains. Taking Bitcoin as an example, this paper also explored the various proposed structures and the corresponding mechanisms, including block storage structure and tamper-proof mechanism, transaction structure and scripting language, trader identification mechanism, and efficient network transaction propagation mechanism. Moreover, several current mainstream blockchain consensus algorithms were described according to the categories of proof-mode, Byzantine-type, traditional consensus, and hybrid consensus. In addition, the latest developments in smart contracts were discussed from some aspects, including concepts, organizational structure, the relationship among modules, as well as execution approaches and processes. Finally, the main security challenges faced by blockchains were summarized in order to systematically grasp the developments and trends of blockchain technology.