Liveness analysis, modeling, and simulation of blockchain consensus algorithms\u27 ability to tolerate malicious miners (original) (raw)
Related papers
Assessing Security and Performances of Consensus algorithms for Permissioned Blockchains
Blockchain is a novel technology that is rising a lot of interest in the industrial and re- search sectors because its properties of decentralisation, immutability and data integrity. Initially, the underlying consensus mechanism has been designed for permissionless block- chain on trustless network model through the proof-of-work, i.e. a mathematical challenge which requires high computational power. This solution suffers of poor performances, hence alternative consensus algorithms as the proof-of-stake have been proposed. Conversely, for permissioned blockchain, where participants are known and authenti- cated, variants of distributed consensus algorithms have been employed. However, most of them comes out without formal expression of security analysis and trust assumptions because the absence of an established knowledge. Therefore the lack of adequate analysis on these algorithms hinders any cautious evaluation of their effectiveness in a real-world setting where systems are deployed over trustless networks, i.e. Internet. In this thesis we analyse security and performances of permissioned blockchain. Thus we design a general model for such a scenario in a way to propose a general benchmark for the experimental evaluations. This work brings two main contributions. The first contribution concern the analysis of Proof-of-Authority, a Byzantine Fault- Tolerant consensus protocol. We compare two of the main algorithms, named Aura and Clique, with respect the well-established Practical Byzantine Fault-Tolerant, in terms of se- curity and performances. We refer the CAP theorem for the consistency, availability and partition tolerance guarantees and we describe a possible attack scenario in which one of the algorithms loses consistency. The analysis advocates that Proof-of-Authority for permissioned blockchains deployed over WANs experimenting Byzantine nodes, do not provide adequate consistency guarantees for scenarios where data integrity is essential. We claim that actually the Practical Byzantine Fault-Tolerant can fit better for permis- sioned blockchain, despite a limited loss in terms of performance. The second contribution is the realisation of a benchmark for practical evaluations. We design a general model for permissioned blockchain under which benchmarking perfor- mances and security guarantees. However, because no experiment can verify all the pos- sible security issues permitted by the model, we prototype an adversarial model which simulate three attacks, feasible for a blockchain system. We then integrate this attacker model in a real blockchain client to evaluate the resiliency of the system and how much the attacks impact performances and security guarantees.
Availability analysis of a permissioned blockchain with a lightweight consensus protocol
Computers & Security, 2021
This paper offers a novel approach to the evaluation of provenance blockchain security and reliability using analytical methods for assessing system availability against malicious miner DoS attacks. In particular, we present the reliability and availability analysis of the L ight W eight M ining (LWM) protocol for securing data provenance. Our analysis shows the reliability of the protocol and its ability to protect against malicious miner DoS attacks. We use digital signatures to prove integrity and non-repudiation of messages passing the system. We describe system behaviors using communicating sequential processes (CSP) to check for synchronization within a number of concurrent processes. Queuing theory is used to determine the average waiting time for client blockchain transactions when malicious miners work to slow the system. CSP and queuing theory jointly test the blockchain's ability to make progress despite the presence of malicious miners. Further, the methodology described can be extended to other blockchain applications. Additional threats, beyond the malicious miner DoS attack, are reserved for future work.
IEEE Access
Recently, Blockchain-based applications have become immensely popular because of limited reliance on a single entity, unlike a centralized system. However, reaching a consensus among blockchain networks is a challenging and vital aspect of blockchain-based applications. There are various types of blockchain networks for different kinds of application scenarios. Among all of them, the consensus algorithm is the most crucial part of reaching an agreement in the complex blockchain network. Over the years, researchers have focused on dealing with the challenges like distributed computing, storage, transaction speed, security, validity, interoperability, and many more. However, only some of them are appropriate for all domains. Therefore, this paper presents an extensive study of different types of consensus protocols used in existing blockchain solutions with the strength and limitations of each algorithm. We also provide an inherent comparison among different algorithms to understand consensus protocol selection better. Moreover, we investigate operational and interoperability issues in existing blockchain-based applications to understand challenges and provide recommendations for future developers. INDEX TERMS Blockchain, consensus algorithm, interoperability, cross-chain transactions, architecture, operational issues, applications, research directions. I. INTRODUCTION T HE blockchain concept was first introduced by Haber and Stornetta [1], which is considered one of the technologies with the most potential. After that the introduction of Bitcoin by Nakamoto [2], it has attracted intense attention from all over the world. In Blockchain systems, different cryptographic protocols, like hash functions, digital signatures, etc., are used to maintain the authenticity and security of the data. Blockchain is a distributed ledger system that keeps data secure from unauthorized access. Blockchain technology allows users to add, view, and validate transactions to the distributed ledger. These transactions often take place with the consent of all involved users. Blockchain uses a consensus mechanism to ensure that all transactions are accurate. In a trustless environment, blockchain provides users with desirable qualities like decentralization, autonomy, integrity, immutability, verification, fault-tolerance, anonymity, auditability, and transparency, which have received significant academic and industrial attention recently years [3]-[6]. However, the blockchain system is trustless and ensures blockchain-enabled trust through other cryptographic peerto-peer communication in the decentralized network. Further verification and validation mechanisms are employed
A comparative study on consensus mechanism with security threats and future scopes: Blockchain
Recently, blockchain has emerged as a peer-to-peer (P2P) immutable distributed ledger technology-based network, and its consensus mechanism is playing an important role in managing decentralized data. The use of the consensus process for open blockchains, on the other hand, has revitalized the industry and spurred new architectures. As part of this research, we have analyzed and categorized a wide range of consensus mechanisms in order to contribute to the process of developing blockchain applications and determining the extent of their influence. Critical technical considerations regarding performance, scalability, and other quality aspects that a blockchain-based system must possess may be assisted by this scientific categorization and comprehensive comparison of consensus algorithms. In this paper, we have mainly depicted: (i) proof-of-work (PoW) along with its enhancement rules like greedy heaviest-observed sub-tree (GHOST) and Bitcoin NG (next generation); (ii) proof-of-Stake (PoS) along with chain-based PoS, committee-based PoS, byzantine fault tolerance (BFT) based extended proof-of-stake (EPoS), and delegated proof of stake (DPoS), i.e. energy-efficient alternative to PoW; (iii) BFT consensus to handle crash fault and Byzantine fault; and (iv) hybrid protocols, which are a combination of the best features of PoW, PoS, and BFT consensus mechanism. To evaluate the performance, scalability, security, and design properties of the system, we have considered five components of consensus algorithms.
Consensus Algorithms Blockchain: A comparative study
International Journal on Perceptive and Cognitive Computing, 2019
A blockchain is a Distributed Ledger Technology that has been defined as a “distributed, shared, encrypted database that serves as an irreversible and incorruptible repository of information. Blockchain can be defined as a peer-to-peer distributed ledger that is cryptographically secure, append-only, immutable and updatable only via consensus or agreement among peers. In blockchain platforms, each transaction in the public ledger is verified by consensus of the majority of the system participants in a transparent and secure way. The consensus algorithm refers to the process of attaining an unified agreement on the state of the network in a decentralized way and to facilitate the verification and validation of information being added to the blockchain. This paper aims at providing a comparison between most of the recent consensus algorithms regarding the scalability of the algorithm; the type of blockchain, node identity, the performance of the algorithm (in terms of throughput & l...
A STUDY ON THE LIMITATIONS OF BLOCKCHAIN AND THE USAGE OF CONSENSUS MODELS IN BLOCKCHAIN TECHNOLOGY
International Journal of Research , 2019
Threats to data ethics are consequently paramount relevance, as tampering with data can maliciously affect crucial business decisions. This issue is especially true in cloud computing surroundings , where data owners can't get a handle on fundamental info elements, such as the physical storage of data as well as also the control of its own Travels. Blockchain has just emerged as a fascinating technology which, among others, provides persuasive qualities about data integrity. Using the blockchain to manage data integrity threats is apparently a natural choice, however, its existing limitations of non throughput, higher latency, and weak stability interfere with the practical feasibility of virtually any blockchain-based solutions. At their basic levelthey empower a network of users to record trades in a shared ledger within that community, for example under normal operation of this blockchain system no trade may be changed once released. This record provides a high level technical overview of blockchain technology. The purpose is to help readers comprehend just how blockchain technology works.
A Research Survey on Applications of Consensus Protocols in Blockchain
Security and Communication Networks
The concept of blockchain, widely known as virtual currencies, saw a massive surge in popularity in recent times. As far as the security of the blockchain is concerned, consensus algorithms play a vital role in the blockchain. Research has been done separately, or comparisons between a few of them have been presented previously. In this paper, we have discussed widely used consensus algorithms in the blockchain. The consensus protocols covered in this paper include PoW (Proof of Work), PoS (Proof of Stake), DPoS (Delegated Proof of Stake), PoET (Proof of Elapsed Time), PBFT (Practical Byzantine Fault Tolerance), and PoA (Proof of Authority). For each consensus, we have reviewed the properties, applications, and performance in the blockchain.
On Availability for Blockchain-Based Systems
2017 IEEE 36th Symposium on Reliable Distributed Systems (SRDS), 2017
Blockchain has recently gained momentum. Startups, enterprises, banks, and government agencies around the world are exploring the use of blockchain for broad applications including public registries, supply chains, health records, and voting. Dependability properties, like availability, are critical for many of these applications, but the guarantees offered by the blockchain technology remain unclear, especially from an application perspective. In this paper, we identify the availability limitations of two mainstream blockchains, Ethereum and Bitcoin. We demonstrate that while read availability of blockchains is typically high, write availability-for transaction managementis actually low. For Ethereum, we collected 6 million transactions over a period of 97 days. First, we measured the time for transactions to commit as required by the applications. Second, we observed that some transactions never commit, due to the inherent blockchain design. Third and perhaps even more dramatically, we identify the consequences of the lack of built-in options for explicit abort or retry that can maintain the application in an uncertain state, where transactions remain pending (neither aborted nor committed) for an unknown duration. Finally we propose techniques to mitigate the availability limitations of existing blockchains, and experimentally test the efficacy of these techniques.