Random number generators (RNG) are an underlying part of Proof-of-Stake consensus protocols and are critically important for many distributed applications on blockchains and directed acyclic graphs (DAGs). A fault-tolerant approach needs the communication and computation synchronicity assumptions to resolve it. The authors present DisCO-an upgraded version of the No-Dealer algorithm. DisCO works under the partial synchronous assumption and guarantees output per run, compared to No-Dealer, which works in a synchronous model and either generates output or detects a faulty participant. DisCO's communication model is more practical than NoDealer's as it meets the Internet. We implemented DisCO as a decentralized application on Hedera Hashgraph DAG. The source code and performance tests are provided.
Sebastian Müller, Angelo Capossele, Bartosz Kuśmierz, Vivian Lin · 9 authors
The security of any Distributed Ledger Technology (DLT) depends on the safety of the network layer. Much effort has been put into understanding the consensus layer of DLTs. However, many network layer designs seem ad-hoc and lack a careful analysis of the influence of the design decisions on the whole DLT system. We propose a salt-based automated neighbor selection protocol that shows the inherent tradeoffs of certain design decisions and allows a quantitative treatment of some network topology requirements. This example may serve as a design framework and facilitate future research. We provide a selection of results from simulations to highlight some tradeoffs in the design decisions.
We present FAWAC, a distributed ledger architecture and consensus strategy that is decentralized, attack-resistant and provides real-world impact through completion of useful work. A multi-enclave architecture separates fast transaction consensus from computational hard tasks used for validator selection. FAWAC uses an Inter-Planetary File System (IPFS) back-end to provide seamless connection between the enclaves and a modified Byzantine Agreement consensus, which actively checks for faulty behavior, to secure the network. This work provides an architectural level overview of the proposed system design.
Ignacio Amores-Sesar, Christian Cachin, Anna Parker
Despite the tremendous interest in cryptocurrencies like Bitcoin and Ethereum today, many aspects of the underlying consensus protocols are poorly understood. Therefore, the search for protocols that improve either throughput or security (or both) continues. Bitcoin always selects the longest chain (i.e., the one with most work). Forks may occur when two miners extend the same block simultaneously, and the frequency of forks depends on how fast blocks are propagated in the network. In the GHOST protocol, used by Ethereum, all blocks involved in the fork contribute to the security. However, the greedy chain selection rule of GHOST does not consider the full information available in the block tree, which has led to some concerns about its security.
Many aspects of blockchain-based decentralized finance can be understood as an extension of classical distributed computing. In this paper, we trace the evolution of two interrelated notions: failure and fault-tolerance. In classical distributed computing, a failure to complete a multi-party protocol is typically attributed to hardware malfunctions. A fault-tolerant protocol is one that responds to such failures by rolling the system back to an earlier consistent state. In the presence of Byzantine failures, a failure may be the result of an attack, and a fault-tolerant protocol is one that ensures that attackers will be punished and victims compensated. In modern decentralized finance however, failure to complete a protocol can be considered a legitimate option, not a transgression. A fault-tolerant protocol is one that ensures that the party offering the option cannot renege, and the party purchasing the option provides fair compensation (in the form of a fee) to the offering party. We sketch the evolution of such protocols, starting with two-phase commit, and finishing with timed hashlocked smart contracts.
Sep 22, 2021·2021 11th IEEE International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications (IDAACS)
Qianyu Zhang, Jun Su, Zhaohui Ma, Yucheng Zhang · 6 authors
The main study focuses on the shortcomings of the traditional PBFT consensus algorithm and the DPOS consensus algorithm, and then combines the two algorithms to form a new consensus algorithm from the perspective of optimising the consensus performance of the blockchain, which can achieve several advantages in terms of node reduction view switching, node dynamics, bandwidth overhead reduction, transaction throughput and lower system latency performance. The advantages of the improved PBFT algorithm are illustrated by the experimental data on throughput, system latency of account creation and bandwidth overhead, which are compared to illustrate the effect of the improved PBFT algorithm.
While many researchers adopt a sharding approach to design scaling blockchains, few works have studied the transaction placement problem incurred by sharding protocols. The widely-used hashing placement algorithm renders an overwhelming portion of transactions as cross-shard. In this paper, we analyze the high cost of cross-shard transactions and reveal that most Bitcoin transactions have simple dependencies and can become single-shard under a placement algorithm taking transaction dependencies into account. In addition, we perform a case study of OptChain, which is the state-of-the-art transaction placement algorithm for sharded blockchains, and find a defect of it. A fix is proposed, and our evaluation results demonstrate that the fix helps OptChain improve the system throughput by 4x.
Vishal Sharma, Zengpeng Li, Paweł Szałachowski, Teik Guan Tan · 5 authors
Decentralized control, low-complexity, flexible and efficient communications are the requirements of an architecture that aims to scale blockchains beyond the current state. Such properties are attainable by reducing ledger size and providing parallel operations in the blockchain. Sharding is one of the approaches that lower the burden of the nodes and enhance performance. However, the current solutions lack the features for resolving concurrency during cross-shard communications. With multiple participants belonging to different shards, handling concurrent operations is essential for optimal sharding. This issue becomes prominent due to the lack of architectural support and requires additional consensus for cross-shard communications. Relying on the advantages of hybrid Proof-of-Work/Proof-of-Stake (PoW/PoS), like Ethereum , hybrid consensus and 2-hop blockchain , we propose Reinshard , a new blockchain that inherits the properties of hybrid consensus for optimal sharding. Reinshard uses PoW and PoS chain-pairs with PoS sub-chains for all the valid chain-pairs where the hybrid consensus is attained through Verifiable Delay Function (VDF). Our architecture provides a secure method of arranging nodes in shards and resolves concurrency conflicts using the delay factor of VDF. The applicability of Reinshard is demonstrated through security and experimental evaluations. A practical concurrency problem is considered to show the efficacy of Reinshard in providing optimal sharding.
Ethereum platforma za izgradnju pametnih ugovora temelji se na blockchain tehnologiji koja je opisana u radu "Konsenzus u Ethereum 2.0 blockchainu". PoW konsenzus mehanizam koji se koristi kod platforme Ethereum sprema svako prethodno stanje mreže na temelju kojeg se računa novo stanje što rezultira ograničenjem skalabilnosti. Zbog tog razloga u tijeku je prijelaz na novi konsenzus mehanizam kao i promjena arhitekture mreže čime će se postići povećanje skalabilnosti. U ovom radu analizira se PoS konsenzus mehanizam kao i promjena arhitekture mreže pomoću layer 2 rješenja.
Blockchain protocols come with a variety of security guarantees. For example, BFT-inspired protocols such as Algorand tend to be secure in the partially synchronous setting, while longest chain protocols like Bitcoin will normally require stronger synchronicity to be secure. Another fundamental distinction, directly relevant to scalability solutions such as sharding, is whether or not a single untrusted user is able to point to *certificates*, which provide incontrovertible proof of block confirmation. Algorand produces such certificates, while Bitcoin does not. Are these properties accidental? Or are they inherent consequences of the paradigm of protocol design? Our aim in this paper is to understand what, fundamentally, governs the nature of security for permissionless blockchain protocols. Using the framework developed in (Lewis-Pye and Roughgarden, 2021), we prove general results showing that these questions relate directly to properties of the user selection process, i.e., the method (such as proof-of-work or proof-of-stake) which is used to select users with the task of updating state. Our results suffice to establish, for example, that the production of certificates is impossible for proof-of-work protocols, but is automatic for standard forms of proof-of-stake protocols. As a byproduct of our work, we also define a number of security notions and identify the equivalences and inequivalences among them.
Selma Steinhoff, Chrysoula Stathakopoulou, Matej Pavlovič, Marko Vukolić
Reconfiguration of long-lived blockchain and Byzantine fault-tolerant (BFT) systems poses fundamental security challenges. In case of state-of-the-art Proof-of-Stake (PoS) blockchains, stake reconfiguration enables so-called long-range attacks, which can lead to forks. Similarly, permissioned blockchain systems, typically based on BFT, reconfigure internally, which makes them susceptible to a similar "I still work here" attack. In this work, we propose BMS (Blockchain/BFT Membership Service) offering a secure and dynamic reconfiguration service for BFT and blockchain systems, preventing long-range and similar attacks. In particular: (1) we propose a root BMS for permissioned blockchains, implemented as an Ethereum smart contract and evaluate it reconfiguring the recently proposed Mir-BFT protocol, (2) we discuss how our BMS extends to PoS blockchains and how it can reduce PoS stake unbonding time from weeks/months to the order of minutes, and (3) we discuss possible extensions of BMS to hierarchical deployments as well as to multiple root BMSs.
Blockchain technology has developed significantly over the last decade. One of the reasons for this is its sustainability architecture, which does not allow modification of the history of committed transactions. That means that developers should consider blockchain vulnerabilities and eliminate them before the deployment of the system. In this paper, we demonstrate a statistical model checking approach for the verification of blockchain systems on three real-world attack scenarios. We build and verify models of DNS attack, double-spending with memory pool flooding, and consensus delay scenario. After that, we analyze experimental results and propose solutions to avoid these kinds of attacks.
Blockchain is not widely applied in various fields due to the critical issue of scalability as part of the blockchain trilemma. This issue arises during consensus among the nodes in a public blockchain. To address the issue of low scalability with proof-of-work (PoW) consensus, various methods have been proposed for transaction per second (TPS) improvement. However, no such methods include an improvement in the consensus step. Therefore, to improve PoW public blockchain scalability, it is important to shorten the time required for PoW consensus. This paper proposes a method for minimizing the block intervals that occur during consensus over a PoW blockchain network. A shortened block interval leads to an increase in the probability of three different attacks: selfish mining, double-spending, and eclipse attacks. According to an experiment using Ethereum, with a typical PoW blockchain, it is inevitable to provide rewards for stable block mining in competition between mining pools. To find an optimal block interval in the PoW consensus algorithm, we conducted a four-step experiment. The purpose of this experiment was to verify the difficulty level and issues with Mainnet security. Therefore, considering stale block mining rewards, an optimal block interval is proposed. The Ethereum TPS was improved by at least 200%. Given this finding, it is considered possible to achieve a similar improvement in a different PoW blockchain. On balance, even if the block interval is shorter than that of the PoW Mainnet, network security falls by only 1.21% in Testnet, even with a rise in the stale block rate, while performance is increased at up to 120 TPS, which is three times higher than that in Mainnet.
Due to their immutable log of information, blockchains can be considered as a transparency-enhancing technology. The immutability, however, also introduces threats and challenges with respect to privacy laws and illegal content. Introducing a certain degree of mutability, which enables the possibility to store and remove information, can therefore increase the opportunities for blockchains. In this paper, we present a concept for a mutable blockchain structure. Our approach enables the removal of certain blocks, while maintaining the blockchain's verifiability property. Since our concept is agnostic to any consensus algorithms, it can be implemented with permissioned and permissionless blockchains.
Blockchain is a peer-to-peer ledger that records a growing list of transactions in a tamper-resistant manner using cryptographic hashes. Centralized points of vulnerability are eliminated in blockchain, and so it is considered secure by design under some reasonable assumptions, such as honest majority. But scalability remains a major limitation that can be improved by sharding. Full sharding is one of the approaches in achieving the high performance of blockchain systems. This paper proposes a locality-based full sharding protocol in permissioned blockchains. We introduce a simple and efficient cross-shard transaction handling protocol. A prototype is under development based on Hyperledger Fabric.
Rafael Belchior, André Vasconcelos, Miguel Correia, Thomas Hardjono
Enabling blockchain-based digital asset exchanges requires blockchain interoperability capabilities. Although some solutions have been proposed in recent years, asset and crypto-currency transfers across legal jurisdictions are still an unsolved problem. To realize this vision, we propose Hermes, a fault-tolerant middleware that connects blockchain networks, enabling the transfer of data and value across legal jurisdictions. Hermes is based on the Open Digital Asset Protocol (ODAP), an asset transfer protocol. Hermes utilizes a novel mechanism called ODAP-2PC and decentralized logging that can solve disputes regarding asset exchange. We find Hermes to fill an existing gap: the technical infrastructure that can constitute the basis for legislating and regulating cross-chain transfers, enabling the future of finance.
Samuel H. Christie, Amit K. Chopra, Munindar P. Singh
A decentralized application involves multiple autonomous principals, e.g., humans and organizations. Autonomy motivates (i) specifying a decentralized application via a protocol that captures the interactions between the principals, and (ii) a programming model that enables each principal to independently (from other principals) construct its own protocol-compliant agent. An agent encodes its principal's decision making and represents it in the application. We contribute Deserv, the first protocol-based programming model for decentralized applications that is suited to the cloud. Specifically, Deserv demonstrates how to leverage function-as-a-service (FaaS), a popular serverless programming model, to implement agents. A notable feature of Deserv is the use declarative protocols to specify interactions. Declarative protocols support implementing stateful agents in a manner that naturally exploits the concurrency and autoscaling benefits offered by serverless computing.
Tendermint is the replication engine at the core of Cosmos, a network of proof-of-stake blockchains. In the lifespan of blockchains, Cosmos and Tendermint are mature technologies, currently used by more than a hundred businesses and deployed by hundreds of nodes. The system was designed to provide flexible deployment despite heterogeneous environments, scale performance with the number of nodes, and tolerate misbehaving participants. In this practical experience report, we overview Tendermint's main design goals and architecture, and present a detailed performance evaluation of the system in a realistic environment. We report results from a geographically distributed environment with up to 128 nodes, including failure-free executions and fail-prone scenarios, with both crash and Byzantine failures.
Blockchain technology can benefit Internet of Things (IoT) in terms of message exchange, access control and management, however, existing blockchain consensus protocols cannot provide sufficient performance without compromising security and fairness. This paper proposes a round-based two-stage blockchain consensus protocol called Proof-of-Transactions (PoT) for a variety of requirements such as performance and security of large-scale IoT. In the first stage of each round, all nodes pre-construct new blocks and exchange information about the number of valid transactions contained in each other’s blocks. The block containing most valid transactions is broadcasted in the second stage and examined by all nodes of the cluster before being received as the new block in the global blockchain ledger. The consensus reaching of a new block requires only two rounds of message exchange process. Theoretical analysis and experimental results verify the feasibility and superiority of the proposed protocol.
Aboul Ella Hassanien, Mohamed Torky, Essam Goda, Václav Snåšel · 5 authors
<title>Abstract</title> Blockchain technology can play a vital role in the space industry and satellite communication. This disruptive technology can build decentralized and secure protocols for processing and manipulating space transactions in the form of space digital tokens (SDTs). Tokenizing space transactions in the form of SDTs will enable various blockchain-based applications in the space industry. Moreover, blockchain protocols based on smart contracts can be utilized to authenticate many space transactions and P2P communications in a transparent, verifiable, and secure manner. This paper proposes a new blockchain-based solution for managing and securing satellite transactions using a novel concept called SDT. SDT is then used to develop a new blockchain protocol called proof of space transactions (PoST), which is then used in proposing a new blockchain-based protocol for authenticating satellite transactions. The proposed PoST protocol is implemented and simulated using the Ethereum blockchain. Five metrics are used to evaluate the protocol's performance: Ethereum GAZ, read latency, transaction latency, read throughput, and transaction throughput. The performance evaluation results proved the efficiency and reliability of PoST in managing and securing satellite transactions.
Marco Mazzoni, Antonio Corradi, Vincenzo Di Nicola
Given the availability of several blockchain technologies in permissioned contexts, blockchain application designers have to cope with the increasing complexity of choosing which technology and consensus algorithm best fit a specific use case. However, the lack of a standard framework allowing to assess the scalability of permissioned blockchain platforms and to compare performances and features of consensus algorithms makes the development of a sensible evaluation a costly and difficult time-consuming problem. Throughout this article, we propose a practical scalability and applicability evaluation of the Quorum blockchain and its consensus algorithms. Although we apply our evaluation workflow to a financial use case, we define a methodology that can be generalized to any permissioned blockchain technology. We leverage Hyperledger Caliper as a benchmarking tool, and Docker as a deployment tool, making our analysis easy to be repeated, cross-platform, and cost-effective.
Aug 19, 2021·2021 IEEE Intl Conf on Dependable, Autonomic and Secure Computing, Intl Conf on Pervasive Intelligence and Computing, Intl Conf on Cloud and Big Data Computing, Intl Conf on Cyber Science and Technology Congress (DASC/PiCom/CBDCom/CyberSciTech)
Shiv Sondhi, Sherif Saad, Kevin Shi, Mohammad Abdullah Al Mamun · 5 authors
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 applications come with many technical challenges. In this paper, we apply chaos engineering and testing to understand the performance of consensus algorithms in the presence of different loads, byzantine failure and other communication failure scenarios. We apply chaos engineering to evaluate the performance of three different consensus algorithms (PBFT, Clique, Raft) and their respective blockchain platforms. We measure the blockchain network's throughput, latency, and success rate while executing chaos and load tests. We develop lightweight blockchain applications to execute our test in a semi-production environment. Our results show that using chaos engineering helps understand how different consensus algorithms perform in a hostile or unreliable environment and the limitations of blockchain platforms. Our work demonstrates the benefits of using chaos engineering in testing complex distributed systems such as blockchain networks.
The application opportunities of distributed ledger technologies (DLT) for replicated, shared and synchronized data, across multiple nodes in a network, may create new possibilities in computing. There are notable differences between applications designed from scratch for being DLT-enabled and established IT applications that assume fundamentally a centralized computing architecture. This short paper reflects on the challenges in transforming established, conventional IT applications to be DLT-enabled. If such a transformation can be implemented successfully, repeatedly, and with acceptable effort, this means that today’s currently deployed IT applications may subsequently take advantage of beneficial properties of DLT. However, there are still a variety of aspects that need to be considered—this short paper contributes to that discussion.