Blockchain has recently attracted the attention of the industry due, in part, to its ability to automate asset transfers. It requires distributed participants to reach a consensus on a block despite the presence of malicious (a.k.a. Byzantine) participants. Malicious participants exploit regularly weaknesses of these blockchain consensus algorithms, with sometimes devastating consequences. In fact, these weaknesses are quite common and are well illustrated by the flaws in the hand-written proofs of existing blockchain consensus protocols [63]. Paradoxically, until now, no blockchain consensus has been holistically verified using model checking.
In this paper, we remedy this paradox by model checking for the first time a blockchain consensus used in industry. We propose a holistic approach to verify the consensus algorithm of the Red Belly Blockchain [20], for any number $n$ of processes and any number $f<n/3$ of Byzantine processes. We decompose directly the algorithm pseudocode in two parts -- an inner broadcast algorithm and an outer decision algorithm -- each modelled as a threshold automaton [36], and we formalize their expected properties in linear-time temporal logic. We then automatically check the inner broadcasting algorithm, under a carefully identified fairness assumption. For the verification of the outer algorithm, we simplify the model of the inner algorithm by relying on its checked properties. Doing so, we formally verify not only the safety properties of the Red Belly Blockchain consensus but also its liveness in about 70 seconds.
Classical and contemporary distributed consensus protocols, may they be for binary agreement, state machine replication, or blockchain consensus, require all protocol participants in a peer-to-peer system to agree on exactly the same information as part of the consensus payload. Although this model of consensus is extensively studied, and is useful for most consensus based decentralized applications, it falls short of defining correct distributed systems which mandate participant credential based privileged visibility into the consensus payload, through the consensus protocol itself. We introd…
Since the inception of Bitcoin, cryptocurrencies and the underlying blockchain technology have attracted an increasing interest from both academia and industry. Among various core components, consensus protocol is the defining technology behind the security and performance of blockchain. From incremental modifications of Nakamoto consensus protocol to innovative alternative consensus mechanisms, many consensus protocols have been proposed to improve the performance of the blockchain network itself or to accommodate other specific application needs. In this survey, we present a comprehensive re…
In the paper, we present designs for multiple blockchain consensus primitives and a novel blockchain system, all based on the use of trusted execution environments (TEEs), such as Intel SGX-enabled CPUs. First, we show how using TEEs for existing proof of work schemes can make mining equitably distributed by preventing the use of ASICs. Next, we extend the design with proof of time and proof of ownership consensus primitives to make mining energy- and time-efficient. Further improving on these designs, we present a blockchain using a proof of luck consensus protocol. Our proof of luck blockcha…
A critical component of any blockchain or distributed ledger technology (DLT) platform is the consensus algorithm. Blockchain consensus algorithms are the primary vehicle for the nodes within a blockchain network to reach an agreement. In recent years, many blockchain consensus algorithms have been proposed mainly for private and permissioned blockchain networks. However, the performance of these algorithms and their reliability in hostile environments or the presence of byzantine and other network failures are not well understood. In addition, the testing and validation of blockchain applicat…
With the development of decentralized consensus protocols, permissionless blockchains have been envisioned as a promising enabler for the general-purpose transaction-driven, autonomous systems. However, most of the prevalent blockchain networks are built upon the consensus protocols under the crypto-puzzle framework known as proof-of-work. Such protocols face the inherent problem of transaction-processing bottleneck, as the networks achieve the decentralized consensus for transaction confirmation at the cost of very high latency. In this paper, we study the problem of consensus formation in a …
While electronic signatures are widespread, there currently exists no viable signing solutions that can track amendments. We proposed VeriSign, a secure contract consensus platform where amendments to contracts can be tracked in a decentralized medium. We demonstrate a user-facing app where signatories can vote on original contracts and amendments, and incorporate a Blockchain where we store the transaction history of original contracts and amendments. This platform has possible applications in tracking the history of legislation, and amendments to legislation.
We consider the problem of varying the security of blockchain transactions according to their importance. This adaptive security is achieved by using variable size consensus committees. To improve performance, such committees function concurrently. We present two algorithms that allow adaptive security by forming concurrent variable size consensus committees on demand. One is based on a single joint blockchain, the other is based on separate sharded blockchains. For in-committee consensus, our algorithms may use various available byzantine-robust fault tolerant algorithms (BFT). We implement s…
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 …
Blockchains are appealing technologies with various applications ranging from banking to networking. IOTA blockchain is one of the most prominent blockchain specifically designed for IoT environments. In this paper we investigate the convergence of IOTA consensus algorithms: Fast Probabilistic Consensus and Cellular Consensus, when run on top of various topologies. Furthermore, we investigate their resilience to various types of adversaries. Our extensive simulations show that both Cellular Consensus and Fast Probabilistic Consensus have poor convergence rates even under low power adversaries …
Most of the Blockchain permissioned systems employ Byzantine fault-tolerance (BFT) consensus protocols to ensure that honest validators agree on the order for appending entries to their ledgers. In this paper, we study the performance and the scalability of prominent consensus protocols, namely PBFT, Tendermint, HotStuff, and Streamlet, both analytically via load formulas and practically via implementation and evaluation. Under identical conditions, we identify the bottlenecks of these consensus protocols and show that these protocols do not scale well as the number of validators increases. Ou…
Blockchain is a type of decentralized distributed network which acts as an immutable digital ledger. Despite the absence of any central governing authority to validate the blocks in the ledger, it is considered secure and immutable due to the consensus protocol among various nodes of the network. A consensus algorithm is a mechanism that guarantees the reliability of the blockchain and helps all connected nodes or peers to reach common ground regarding the present state of the blockchain network thus an ideal consensus algorithm must be secure, reliable, and fast. There are several different a…
In the white book of Bitcion, Satoshi Nakamoto described a bitcoin system that can realize point-to-point online payment without a third-party organization. After supporting this magical application scenario and subverting the traditional centralized system, the blockchain technology has attracted worldwide attention, triggered a research upsurge of blockchain consensus algorithm, and produced a large number of innovative applications. Although various consensus algorithms continue to evolve with the iteration of blockchain products and applications, Proof of Work (POW) and Proof of Skake (POS…
We define and examine the shutdown problem for blockchain systems: how to gracefully end the system's operation at the end of its useful life. A particular focus is those blockchain systems that hold archival data of long-lived interest. We outline what it means to achieve a successful shutdown, and compare those criteria to likely end-of-life conditions in a generic blockchain system. We conclude that the decentralized nature of blockchain systems makes shutdown difficult, particularly if the system uses an unstable consensus like the Nakamoto consensus of Bitcoin. Accordingly, we recommend a…
As an emerging technology, blockchain has achieved great success in numerous application scenarios, from intelligent healthcare to smart cities. However, a long-standing bottleneck hindering its further development is the massive resource consumption attributed to the distributed storage and computation methods. This makes blockchain suffer from insufficient performance and poor scalability. Here, we analyze the recent blockchain techniques and demonstrate that the potential of widely-adopted consensus-based scaling is seriously limited, especially in the current era when Moore's law-based har…
This work introduces a novel approach for the governance of a blockchain containing social constructs and technical viability for widescale applications for the next generation of distributed ledgers. Functional requirements for this new blockchain distributed ledger (BDL) were garnered from an analysis of the needs for large-scale applications. Applied research was employed as part of this endeavor to test the practicality and scalability of the solution outline. Novel features in this application draw together controls and enforcement for cybersecurity, digital content management, licensing,…
A Unitychain is a novel blockchain-like structure that drastically improves transaction scalability and security while maintaining ongoing network performance, even if participating nodes are required to perform a new Distributed Key Generation procedure for security purposes. The Unitychain structure, furthermore, enables greater parallel processing by the assignment of different network node configurations for various database and compute ranges into multiple strands of blockchains that intersect, creating a multi-helix structure, which we call a Unitychain. This thereby enables the network …
The decentralized cryptocurrency Bitcoin has experienced great success but also encountered many challenges. One of the challenges has been the long confirmation time. Another challenge is the lack of incentives at certain steps of the protocol, raising concerns for transaction withholding, selfish mining, etc. To address these challenges, we propose Solida, a decentralized blockchain protocol based on reconfigurable Byzantine consensus augmented by proof-of-work. Solida improves on Bitcoin in confirmation time, and provides safety and liveness assuming the adversary control less than (roughly…
The popularization of blockchains leads to a resurgence of interest in Byzantine Fault-Tolerant (BFT) state machine replication protocols. However, much of the work on this topic focuses on the underlying consensus protocols, with emphasis on their lack of scalability, leaving other subtle limitations unaddressed. These limitations are related to the effects of maintaining a durable blockchain instead of a write-ahead log and the requirement for reconfiguring the set of replicas in a decentralized way. We demonstrate these limitations using a digital coin blockchain application and BFT-SMaRt, …
Why No Consensus on Consensus? A Deep Dive into Blockchain Consensus Protocols
VAISR Research Group, Tehran, Iran(德黑兰 VAISR 研究组);IDEAS Group, DistriNet, KU Leuven, Leuven, Belgium(鲁汶大学 IDEAS 小组);Department of Computer Science University of Galway Galway, Ireland(高威大学计算机系)
The past decade has witnessed the rapid evolution in blockchain technologies, which has attracted tremendous interests from both the research communities and industries. The blockchain network was originated from the Internet financial sector as a decentralized, immutable ledger system for transactional data ordering. Nowadays, it is envisioned as a powerful backbone/framework for decentralized data processing and data-driven self-organization in flat, open-access networks. In particular, the plausible characteristics of decentralization, immutability and self-organization are primarily owing …
In today's connected world, resource constrained devices are deployed for sensing and decision making applications, ranging from smart cities to environmental monitoring. Those recourse constrained devices are connected to create real-time distributed networks popularly known as the Internet of Things (IoT), fog computing and edge computing. The blockchain is gaining a lot of interest in these domains to secure the system by ignoring centralized dependencies, where proof-of-work (PoW) plays a vital role to make the whole security solution decentralized. Due to the resource limitations of the d…
The choice of the consensus method ultimately determines throughput, scalability, tamper resistance, and consistency of a blockchain system. However, across all the types of blockchain (private, semi-private, consortium, or public), there is no consensus method that uniformly addresses all these traits. Verifiable lottery algorithms (Proof of ...) increase tamper resistance but show weakness in throughput and scalability, while established methods like PAXOS and RAFT provide no additional protection against tampering. In this paper, we introduce Right to Sign which aims to provide additional t…
Consensus mechanism is the heart of any blockchain network. Many projects have proposed alternative protocols to improve restricted scalability of Proof of Work originated since Bitcoin. As an improvement of Delegated Proof of Stake, in this paper, we introduce a novel consensus, namely, Delegated Proof of Reputation, which is scalable, secure with an acceptable decentralization. Our innovative idea is replacing pure coinstaking by a reputation ranking system essentially based on ranking theories (PageRank, NCDawareRank and HodgeRank).
The goal of this paper is to establish the general framework of consensus equilibria for Mining-Pool Games in Blockchain Ecosystems, and with the explanation for the stability of in terms of the existence of consensus equilibria related to mining gap game's behaviors by using one new concept called consensus games in Blockchain Ecosystems, here, the Blockchain ecosystem mainly means the economic activities by taking into the account of three types of different factors which are expenses, reward mechanism and mining power for the work on blockschain by applying the key consensus called Proof of…
Blockchain-based consensus protocols present the opportunity to develop new protocols, due to their novel requirements of open participation and explicit incentivization of participants. To address the first requirement, it is necessary to consider the leader election inherent in consensus protocols, which can be difficult to scale to a large and untrusted set of participants. To address the second, it is important to consider ways to provide incentivization without relying on the resource-intensive proofs-of-work used in Bitcoin. In this paper, we propose a secure leader election protocol, Ca…
A blockchain is a decentralized ledger where all transactions are recorded. For having a reliable blockchain and double-spending prevention, we need a decentralized consensus and agreement on a blockchain. Bitcoin uses proof-of-work (PoW). It is a cryptographic puzzle that is difficult to solve but easy to verify. However, because of significant latency of proof-of-work for transactions confirmation, this consensus mechanism is vulnerable against double-spending. On the other hand, PoW consumes a significant amount of energy that by growing the network, it becomes a major problematic of this c…
Pravuil is a robust, secure, and scalable consensus protocol for a permissionless blockchain suitable for deployment in an adversarial environment such as the Internet. Pravuil circumvents previous shortcomings of other blockchains: - Bitcoin's limited adoption problem: as transaction demand grows, payment confirmation times grow much lower than other PoW blockchains - higher transaction security at a lower cost - more decentralisation than other permissionless blockchains - impossibility of full decentralisation and the blockchain scalability trilemma: decentralisation, scalability, and secur…
This document introduces XinFin DPoS 2.0, the proposed next generation decentralized consensus engine for the XinFin XDC Network. Built upon the most advanced BFT consensus protocol, this upgrade will empower the XDC Network with military-grade security and performance while consuming extremely low resources, and will be fully backwards-compatible in terms of APIs. It will also pave the road to the future evolution of the XDC Network. The core invention is the holistic integration of accountability and forensics in blockchains: the ability to identify malicious actors with cryptographic integr…
Smart Grids and Industry 4.0 (I4.0) are neither a dream nor a near-future thing anymore, rather it is happening now. The integration of more and more embedded systems and IoT devices is pushing smart grids and I4.0 forward at a breakneck speed. To cope up with this, the modification of age-old SCADA (Supervisory Control and Data Acquisition) systems in terms of decentralization, near-real-time operation, security, and privacy is necessary. In this context, blockchain technology has the potential of providing not only these essential features of the data acquisition process of future SCADA syst…
The success of blockchain as the underlying technology for cryptocurrencies has opened up possibilities for its use in other application domains as well. The main advantages of blockchain for its potential use in other domains are its inherent security mechanisms and immunity to different attacks. A blockchain relies on a consensus method for agreeing on any new data. Most of the consensus methods which are currently used for the blockchain of different cryptocurrencies require high computational power and thus are not apt for resource-constrained systems. In this article, we discuss and surve…
In the general setting, consensus cannot be solved if an adversary controls a third of the system. Yet, blockchain participants typically reach consensus "eventually" despite an adversary controlling a minority of the system. Exceeding this $\frac{1}{3}$ cap is made possible by tolerating transient disagreements, where distinct participants select distinct blocks for the same index, before eventually agreeing to select the same block. Until now, no blockchain could tolerate an attacker controlling a majority of the system. In this paper, we present Zero-Loss Blockchain (ZLB), the first blockch…
The proof-of-work consensus protocol suffers from two main limitations: waste of energy and offering only probabilistic guarantees about the status of the blockchain. This paper introduces SklCoin, a new Byzantine consensus protocol and its corresponding software architecture. This protocol leverages two ideas: 1) the proof-of-stake concept to dynamically form stake proportionate consensus groups that represent block miners (stakeholders), and 2) scalable collective signing to efficiently commit transactions irreversibly. SklCoin has immediate finality characteristic where all miners instantly…
We make several contributions that quantify the real-time hash rate and therefore the consensus of a blockchain. We show that by using only the hash value of blocks, we can estimate and measure the hash rate of all miners or individual miners, with quanti able accuracy. We apply our techniques to the Ethereum and Bitcoin blockchains; our solution applies to any proof-of-work-based blockchain that relies on a numeric target for the validation of blocks. We also show that if miners regularly broadcast status reports of their partial proof-of- work, the hash rate estimates are signi cantly more a…
Blockchain based cryptocurrencies are usually unmanaged, distributed, consensus-based systems in which no single entity has control. Managed cryptocurrencies can be implemented using private blockchains but are fundamentally different as the owners have complete control to do arbitrary activity without transparency (since they control the mining). In this work we explore a hybrid approach where a managed cryptocurrency is maintained through distributed consensus based methods. The currency administrator can perform ongoing management functions while the consensus methods enforce the rules of t…
We propose a novel consensus protocol based on a hybrid approach, that combines a directed acyclic graph (DAG) and a classical chain of blocks. This architecture allows us to enforce collective block construction, minimising the monopolistic power of the round-leader. In this way, we decrease the possibility for collusion among senders and miners, as well as miners themselves, allowing the use of more incentive compatible and fair pricing strategies. We investigate these possibilities alongside the ability to use the DAG structure to minimise the risk of transaction censoring. We conclude by p…
Blockchains rely on a consensus among participants to achieve decentralization and security. However, reaching consensus in an online, digital world where identities are not tied to physical users is a challenging problem. Proof-of-work provides a solution by linking representation to a valuable, physical resource. While this has worked well, it uses a tremendous amount of specialized hardware and energy, with no utility beyond blockchain security. Here, we propose an alternative consensus scheme that directs the computational resources to the optimization of machine learning (ML) models, a ta…
For a decentralized and transparent society, blockchain technology has been developed. Along with this, quite a few consensus algorithms that are one of core technologies in blockchain have been proposed. Among them, we analyze a consensus algorithm called LFT2, which is used by a blockchain system, ICON. We first formulate the LFT2 consensus algorithm and then analyze safety and liveness, which can be considered as the most important properties in distributed consensus system. We prove that LFT2 satisfies safety and liveness, where a certain assumption is required to prove liveness. In additi…
Blockchains based on the celebrated Nakamoto consensus protocol have shown promise in several applications, including cryptocurrencies. However, these blockchains have inherent scalability limits caused by the protocol's consensus properties. In particular, the \emph{consistency} property demonstrates a tight trade-off between block production speed and the system's security in terms of resisting adversarial attacks. This paper proposes a novel method, Ironclad, that improves blockchain consistency bound by assigning a different weight to randomly selected blocks. We apply our method to the or…
The blockchain initially gained traction in 2008 as the technology underlying bitcoin, but now has been employed in a diverse range of applications and created a global market worth over $150B as of 2017. What distinguishes blockchains from traditional distributed databases is the ability to operate in a decentralized setting without relying on a trusted third party. As such their core technical component is consensus: how to reach agreement among a group of nodes. This has been extensively studied already in the distributed systems community for closed systems, but its application to open blo…
Towards Secure Decentralized Applications and Consensus Protocols in Blockchains (on Selfish Mining, Undercutting Attacks, DAG-Based Blockchains, E-Voting, Cryptocurrency Wallets, Secure-Logging, and CBDC)
Blockchain, the technology behind the popular Bitcoin, is considered a "security by design" system as it is meant to create security among a group of distrustful parties yet without a central trusted authority. The security of blockchain relies on the premise of honest-majority, namely, the blockchain system is assumed to be secure as long as the majority of consensus voting power is honest. And in the case of proof-of-work (PoW) blockchain, adversaries cannot control more than 50% of the network's gross computing power. However, this 50% threshold is based on the analysis of computing power o…