Mounzer Saijare, İ̇hsan Tolga Medeni, Tunç D. Medeni, Mehmet Serdar Güzel
Ethereum databases with their huge security and integrity can provide perfect mechanism for storing and sharing the data of the highly important projects. Qualitative and quantitative research methods were used in this paper to design software for Ethereum databases. Also, these methods were used to examine how and how much features can be added to the software. Designing the software considered the barriers and the limitations of Solidity smart contracts programming language and Ethereum blockchain platform. The achieved software can make any Ethereum database with parent-child relationships in between the tables. More professional features will be added in future research as soon as possible. The study used survey method to discuss recommended applications for the software integration with another software for ESRI digital maps programming. The recommended applications are the real estate business full automation and the transparent environmental management to protect the Mediterranean Sea from the pollution. However, most parts related to Ethereum databases software are covered. But to keep this paper in reasonable size, only the survey is included for the parts related to the software recommended applications with the digital maps software.
Today there is considerable interest in deploying blockchains and\ndecentralized ledger technology as a means to address the deficiencies of\ncurrent financial and digital asset infrastructures. The focal point of\nattention in many projects on digital asset and cryptocurrency is centered\naround blockchain systems and smart contracts. Many projects seek to make the\nblockchain as the centerpiece of the new decentralized world of finance.\nHowever, several roadblocks and challenges currently face this predominant\nblockchain-centric view. In this paper we argue that the proper and correct\nperspective on decentralized economy should be one that is asset-centric, where\nthe goal should be the consistent lifecycle management of assets in the\nreal-world with their digital representation on the blockchain. We introduce\nthe notion of the digital twin to capture the relationship between a real-world\nasset and its on-chain representation. A digital twin container is utilized to\npermit off-chain state persistence and on-chain state traceability, where the\ncontainer can be deployed on the blockchain as well as on traditional\napplication servers. The digital twin container becomes the bridge between\nlegacy infrastructures and the newly emergent blockchain infrastructures,\npermitting legacy systems to interoperate consistently with blockchain systems.\nWe believe this asset-centric view to be the correct evolutionary direction for\nthe nascent field of blockchains and decentralized ledger technology.\n
Intrusion Detection Systems (IDS) have been the industry standard for securing IoT networks against known attacks. To increase the capability of an IDS, researchers proposed the concept of blockchain-based Collaborative-IDS (CIDS), wherein blockchain acts as a decentralised platform allowing collaboration between CIDS nodes to share intrusion related information, such as intrusion alarms and detection rules. However, proposals in blockchain-based CIDS overlook the importance of continuous evaluation of the trustworthiness of each node and generally work based on the assumption that the nodes are always honest. In this paper, we propose a decentralised CIDS that emphasises the importance of building trust between CIDS nodes. In our proposed solution, each CIDS node exchanges detection rules to help other nodes detect new types of intrusion. Our architecture offloads the trust computation to the blockchain and utilises a decentralised storage to host the shared trustworthy detection rules, ensuring scalability. Our implementation in a lab-scale testbed shows that the our solution is feasible and performs within the expected benchmarks of the Ethereum platform.
Recently, two attacks were presented against Proof-of-Stake (PoS) Ethereum: one where short-range reorganizations of the underlying consensus chain are used to increase individual validators' profits and delay consensus decisions, and one where adversarial network delay is leveraged to stall consensus decisions indefinitely. We provide refined variants of these attacks, considerably relaxing the requirements on adversarial stake and network timing, and thus rendering the attacks more severe. Combining techniques from both refined attacks, we obtain a third attack which allows an adversary with vanishingly small fraction of stake and no control over network message propagation (assuming instead probabilistic message propagation) to cause even long-range consensus chain reorganizations. Honest-but-rational or ideologically motivated validators could use this attack to increase their profits or stall the protocol, threatening incentive alignment and security of PoS Ethereum. The attack can also lead to destabilization of consensus from congestion in vote processing.
In the last four years, the evolution and adoption of blockchain and, more generally, distributed ledger systems have shown the affirmation of many concepts and models with significant differences in system governance and suitable applications. This work aims to analyze distributed ledger technology (DLT) critically. Starting from the topical idea of decentralization, we introduce concepts and building blocks currently adopted in the available systems centering on their functional aspects and impact on possible applications. We present some conceptual framing tools helpful in the application context: a DLT reference architecture, off-chain and on-chain governance models, and classification of consensus protocols. Finally, we introduce the concept of process authenticity, reviewing tools and strategies for integrating DLT with the physical world and proposing a constructive scheme for the authentication of a physical resource through alphanumeric data.
The last decade has sparked several valiant efforts in deductive verification of distributed agreement protocols such as consensus and leader election. Oddly, there have been far fewer verification efforts that go beyond the core protocols and target applications that are built on top of agreement protocols. This is unfortunate, as agreement-based distributed services such as data stores, locks, and ledgers are ubiquitous and potentially permit modular, scalable verification approaches that mimic their modular design. We address this need for verification of distributed agreement-based systems through our novel modeling and verification framework, QuickSilver, that is not only modular, but also fully automated. The key enabling feature of QuickSilver is our encoding of abstractions of verified agreement protocols that facilitates modular, decidable, and scalable automated verification. We demonstrate the potential of QuickSilver by modeling and efficiently verifying a series of tricky case studies, adapted from real-world applications, such as a data store, a lock service, a surveillance system, a pathfinding algorithm for mobile robots, and more.
Oct 10, 2021·Proceedings of the ... Annual Hawaii International Conference on System Sciences/Proceedings of the Annual Hawaii International Conference on System Sciences
Johannes Sedlmeir, Tim Wagner, Emil Djerekarov, Ryan Green · 6 authors
Enterprises have been attracted by the capability of blockchains to provide a single source of truth for workloads that span companies, geographies, and clouds while retaining the independence of each party's IT operations. However, so far production applications have remained rare, stymied by technical limitations of existing blockchain technologies and challenges with their integration into enterprises' IT systems. In this paper, we collect enterprises' requirements on distributed ledgers for data sharing and integration from a technical perspective, argue that they are not sufficiently addressed by available blockchain frameworks, and propose a novel distributed ledger design that is "serverless", i.e., built on cloud-native resources. We evaluate its qualitative and quantitative properties and give evidence that enterprises already heavily reliant on cloud service providers would consider such an approach acceptable, particularly if it offers ease of deployment, low transactional cost structure, and a combination of latency and scalability aligned with real-time IT application needs.
A key component of blockchain technology is the ledger, viz., a database that, unlike standard databases, keeps in memory the complete history of past transactions as in a notarial archive for the benefit of any future test. In second-generation blockchains such as Ethereum the ledger is coupled with smart contracts, which enable the automation of transactions associated with agreements between the parties of a financial or commercial nature. The coupling of smart contracts and ledgers provides the technological background for very innovative application areas, such as Decentralized Autonomous Organizations (DAOs), Initial Coin Offerings (ICOs) and Decentralized Finance (DeFi), which propelled blockchains beyond cryptocurrencies that were the only focus of first generation blockchains such as the Bitcoin. However, the currently used implementation of smart contracts as arbitrary programming constructs has made them susceptible to dangerous bugs that can be exploited maliciously and has moved their semantics away from that of legal contracts. We propose here to recompose the split and recover the reliability of databases by formalizing a notion of contract modelled as a finite-state automaton with well-defined computational characteristics derived from an encoding in terms of allocations of resources to actors, as an alternative to the approach based on programming. To complete the work, we use temporal logic as the basis for an abstract query language that is effectively suited to the historical nature of the information kept in the ledger.
Nur Arifin Akbar, Andi Sunyoto, M. Rudyanto Arief, Wahyu Caesarendra
Today, there is a tendency to reduce the dependence on local computation in favor of cloud computing. However, this inadvertently increases the reliance upon distributed fault-tolerant systems. In a condition that forced to work together, these systems often need to reach an agreement on some state or task, and possibly even in the presence of some misbehaving Byzantine nodes. Although non-trivial, Byzantine Agreement (BA) protocols now exist that are resilient to these types of faults. However, there is still a risk for inconsistencies in the application state in practice, even if a BA protocol is used. A single transient fault may put a node into an illegal state, creating a need for new self-stabilizing BA protocols to recover from illegal states. As self-stabilization often comes with a cost, primarily in the form of communication overhead, a potential lowering of latency - the cost of each message - could significantly impact how fast the protocol behaves overall. Thereby, there is a need for new network protocols such as QUIC, which, among other things, aims to reduce latency. In this paper, we survey current state-of-the-art agreement protocols. Based on previous work, some researchers try to implement pseudocode like QUIC protocol for Ethereum blockchain to have a secure network, resulting in slightly slower performance than the IP-based blockchain. We focus on consensus in the context of blockchain as it has prompted the development and usage of new open-source BA solutions that are related to proof of stake. We also discuss extensions to some of these protocols, specifically the possibility of achieving self-stabilization and the potential integration of the QUIC protocol, such as PoS and PBFT. Finally, further challenges faced in the field and how they might be overcome are discussed.
Sebastian Friebe, Oliver Stengele, Hannes Hartenstein, Martina Zitterbart
When software systems become more complex, it can be advantageous to partition their code into multiple, separate components. In this work, we examine how multiple smart contracts can be coupled to work together. When coupling smart contracts, different design approaches are possible with their own advantages and disadvantages. As an example, we couple two smart contract applications on the Ethereum blockchain: Palinodia and DecentID. Palinodia can be used to ensure the integrity of downloaded executable binaries by checking their hashes against the hashes stored in the blockchain. To make sure that not everyone can modify the data stored on the blockchain, an identity management system is required. This task is fulfilled by DecentID, which provides decentralized identities stored as smart contracts on the blockchain. We evaluate approaches of coupling these two applications and discuss their benefits and drawbacks for this use case.
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.
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.
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.
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.
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.
Blockchain technology has been gaining great interest from a variety of sectors, including healthcare, supply chain and cryptocurrencies. However, Blockchain suffers from its limited ability to scale (i.e. low throughput and high latency). Several solutions have been appeared to tackle this issue. In particular, sharding proved that it is one of the most promising solutions to Blockchain scalability. Sharding can be divided into two major categories: (1) Sharding-based Proof-of-Work (PoW) Blockchain protocols, and (2) Sharding-based Proof-of-Stake (PoS) Blockchain protocols. The two categories achieve a good performances (i.e. good throughput with a reasonable latency), but raise security issues. This article attends that analyze the security of the second category. More specifically, we compute the probability of committing a faulty block and measure the security by computing the number of years to fail. Finally, to show the effectiveness of the proposed model, we conduct a numerical analysis and evaluate the results obtained.
A new node joining a blockchain network first synchronizes with the network to verify ledger state by downloading the entire ledger history. We present Aurora, a probabilistic algorithm that \textit{identifies honest nodes} for transient or persistent communication in the presence of malicious nodes in a blockchain network, or ceases operation if it is unable to do so. The algorithm allows a node joining the network to make an informed decision about its next synchronization step or to verify that a transaction is contained in a valid ledger block without downloading the entire ledger or even the header chain. The algorithm constructs a Directed Acyclic Graph on the network topology to select a subset of nodes including a predefined number of honest nodes with a given probability. It is evaluated on a Bitcoin-like network topology using an open-source blockchain simulator. We investigate algorithm performance and analyze its communication complexity. Our results show that the algorithm facilitates trustless interactions of resource-constrained nodes with a blockchain network containing malicious nodes to enable a leaner initial blockchain download or an efficient and trustless transaction inclusion verification. Moreover, the algorithm can be implemented without any changes to the existing consensus protocol.