scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Untangling Blockchain: A Data Processing View of Blockchain Systems

TL;DR: This paper conducts a comprehensive evaluation of three major blockchain systems based on BLOCKBENCH, namely Ethereum, Parity, and Hyperledger Fabric, and discusses several research directions for bringing blockchain performance closer to the realm of databases.
Abstract: Blockchain technologies are gaining massive momentum in the last few years. Blockchains are distributed ledgers that enable parties who do not fully trust each other to maintain a set of global states. The parties agree on the existence, values, and histories of the states. As the technology landscape is expanding rapidly, it is both important and challenging to have a firm grasp of what the core technologies have to offer, especially with respect to their data processing capabilities. In this paper, we first survey the state of the art, focusing on private blockchains (in which parties are authenticated). We analyze both in-production and research systems in four dimensions: distributed ledger, cryptography, consensus protocol, and smart contract. We then present BLOCKBENCH, a benchmarking framework for understanding performance of private blockchains against data processing workloads. We conduct a comprehensive evaluation of three major blockchain systems based on BLOCKBENCH, namely Ethereum, Parity, and Hyperledger Fabric. The results demonstrate several trade-offs in the design space, as well as big performance gaps between blockchain and database systems. Drawing from design principles of database systems, we discuss several research directions for bringing blockchain performance closer to the realm of databases.
Citations
More filters
Proceedings ArticleDOI
23 Apr 2018
TL;DR: This paper describes Fabric, its architecture, the rationale behind various design decisions, its most prominent implementation aspects, as well as its distributed application programming model, and shows that Fabric achieves end-to-end throughput of more than 3500 transactions per second in certain popular deployment configurations.
Abstract: Fabric is a modular and extensible open-source system for deploying and operating permissioned blockchains and one of the Hyperledger projects hosted by the Linux Foundation (www.hyperledger.org). Fabric is the first truly extensible blockchain system for running distributed applications. It supports modular consensus protocols, which allows the system to be tailored to particular use cases and trust models. Fabric is also the first blockchain system that runs distributed applications written in standard, general-purpose programming languages, without systemic dependency on a native cryptocurrency. This stands in sharp contrast to existing block-chain platforms that require "smart-contracts" to be written in domain-specific languages or rely on a cryptocurrency. Fabric realizes the permissioned model using a portable notion of membership, which may be integrated with industry-standard identity management. To support such flexibility, Fabric introduces an entirely novel blockchain design and revamps the way blockchains cope with non-determinism, resource exhaustion, and performance attacks. This paper describes Fabric, its architecture, the rationale behind various design decisions, its most prominent implementation aspects, as well as its distributed application programming model. We further evaluate Fabric by implementing and benchmarking a Bitcoin-inspired digital currency. We show that Fabric achieves end-to-end throughput of more than 3500 transactions per second in certain popular deployment configurations, with sub-second latency, scaling well to over 100 peers.

2,813 citations


Cites background from "Untangling Blockchain: A Data Proce..."

  • ...o compare to all (some prominent ones are Tendermint [14], Quorum [13], Chain Core [4], Multichain [12], Hyperledger Sawtooth [9], the Volt proposal [50], and more, see references in recent overviews [24, 30]). All platforms follow the order-execute architecture, as discussed in Section 2. As a representative example, take the Quorum platform [35], an enterprise-focused version of Ethereum. With its conse...

    [...]

Journal ArticleDOI
TL;DR: A detailed review of the security-related challenges and sources of threat in the IoT applications is presented and four different technologies, blockchain, fog computing, edge computing, and machine learning, to increase the level of security in IoT are discussed.
Abstract: The Internet of Things (IoT) is the next era of communication. Using the IoT, physical objects can be empowered to create, receive, and exchange data in a seamless manner. Various IoT applications focus on automating different tasks and are trying to empower the inanimate physical objects to act without any human intervention. The existing and upcoming IoT applications are highly promising to increase the level of comfort, efficiency, and automation for the users. To be able to implement such a world in an ever-growing fashion requires high security, privacy, authentication, and recovery from attacks. In this regard, it is imperative to make the required changes in the architecture of the IoT applications for achieving end-to-end secure IoT environments. In this paper, a detailed review of the security-related challenges and sources of threat in the IoT applications is presented. After discussing the security issues, various emerging and existing technologies focused on achieving a high degree of trust in the IoT applications are discussed. Four different technologies, blockchain, fog computing, edge computing, and machine learning, to increase the level of security in IoT are discussed.

800 citations


Cites background from "Untangling Blockchain: A Data Proce..."

  • ...Irrespective of the distance between the devices, the data generated by them can be easily stored on the blockchain in a secure manner [112]....

    [...]

Journal ArticleDOI
TL;DR: This paper provides a systematic vision of the organization of the blockchain networks, a comprehensive survey of the emerging applications of blockchain networks in a broad area of telecommunication, and discusses several open issues in the protocol design for blockchain consensus.
Abstract: 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 to the unique decentralized consensus mechanisms introduced by blockchain networks. This survey is motivated by the lack of a comprehensive literature review on the development of decentralized consensus mechanisms in blockchain networks. In this paper, we provide a systematic vision of the organization of blockchain networks. By emphasizing the unique characteristics of decentralized consensus in blockchain networks, our in-depth review of the state-of-the-art consensus protocols is focused on both the perspective of distributed consensus system design and the perspective of incentive mechanism design. From a game-theoretic point of view, we also provide a thorough review of the strategy adopted for self-organization by the individual nodes in the blockchain backbone networks. Consequently, we provide a comprehensive survey of the emerging applications of blockchain networks in a broad area of telecommunication. We highlight our special interest in how the consensus mechanisms impact these applications. Finally, we discuss several open issues in the protocol design for blockchain consensus and the related potential research directions.

680 citations


Cites background from "Untangling Blockchain: A Data Proce..."

  • ...However, due to the recent market frenzy about cryptocurrencies, most of the existing general reviews and surveys on blockchains emphasize narrowly the scenarios of using blockchain networks as the backbone technologies for cryptocurrencies, especially the market-dominant ones such as Bitcoin and Ethereum [2]–[4], [18]–[22]....

    [...]

  • ...In contrast, the Ethereum-like networks adopt a Kademlia-inspired protocol based on Distributed Hash Tables (DHTs) [28] for peer/route discovery5 through UDP connections....

    [...]

  • ...Due to the explosion of network-level hashrates (see Figure 7(a)), most of the practical blockchain networks, i.e., cryptocurrency networks, are nowadays dominated by the proxies of mining pools [67] Table III COMPARISON OF DIFFERENT POX SCHEMES FOR PERMISSIONLESS BLOCKCHAINS Puzzle Name Origin of Hardness (One-way Function) Designing Goal Implementation Description ZKP Properties Simulation of Random Function Features of Puzzle Design Network Realization Primitive proof of work [24], [87] Partial preimage search via exhaustive queries to the random oracle Sybil-proof Repeated queries to cryptographic hash function Yes Yes Single challenge Bitcoin [1], Litecoin [93] Proof of exercise [106] Matrix product Computation delegation Probabilistic verification N/A No Single challenge N/A Useful proof of work [85] K-orthogonal vector, 3SUM, all-pairs shortest path, etc. Computation delegation Non-interactiveness via Fiat-Shamir transformation Yes Yes Single challenge with sequential hash queries N/A Resource-efficient mining [101] N/A Computation delegation Guaranteed by TEE Yes Yes Trusted random oracle implemented by dedicated hardware N/A Proof of retrievability [111] Merkle proofs of file fragments in the Merkle tree Distributed storage Non-interactiveness via Fiat-Shamir transformation and random Merkle proofs Yes Conditional Two-stage challenge Permacoin [110], KopperCoin [71] Proof of space -time [37] The repeated proof of retrievability over time Decentralized storage market Repeated PoR Yes Conditional Two-stage challenge and repeated PoR over time Filecoin [37] Equihash [82] The generalized birthday problem ASIC resistance Time-space complexity trade-off in proof generation [82] Yes Yes Memory-hard ZCash [45] Ethash [115] Random path searching a random DAG ASIC resistance Repeated queries to cryptographic hash function Yes Yes Sequential, memoryhard puzzle Ethereum [36] Nnonoutsourceable scratch-off puzzle [83] Generalization of proof of retrievability Centralization resistance Random Merkle proof Yes Yes Two-stage challenge N/A Proof of space [117] Merkle proofs of a vertex subset in a random DAG Energy efficiency Random Merkle proof Yes Yes Two-stage challenge and measurement of proof quality SpaceMint [117] Proof of human work [103] Radom CAPTCHA puz- zle requiring human effort Useful work and energy efficiency CAPTCHA and PoW Yes Yes Human in the loop N/A (see Figure 12)....

    [...]

  • ...known as the Proof of Work (PoW) scheme [2], [3]....

    [...]

  • ...The virtual computer layer may adopt different levels of Turing-completeness for smart contract implementation, ranging from stateless circuits in Bitcoin [1] to fully Turingcomplete state machines in Ethereum [36] and HyperLedger Fabric [40]....

    [...]

Journal ArticleDOI
TL;DR: An in-depth survey of BCoT is presented and the insights of this new paradigm are discussed and the open research directions in this promising area are outlined.
Abstract: Internet of Things (IoT) is reshaping the incumbent industry to smart industry featured with data-driven decision-making. However, intrinsic features of IoT result in a number of challenges, such as decentralization, poor interoperability, privacy, and security vulnerabilities. Blockchain technology brings the opportunities in addressing the challenges of IoT. In this paper, we investigate the integration of blockchain technology with IoT. We name such synthesis of blockchain and IoT as blockchain of things (BCoT). This paper presents an in-depth survey of BCoT and discusses the insights of this new paradigm. In particular, we first briefly introduce IoT and discuss the challenges of IoT. Then, we give an overview of blockchain technology. We next concentrate on introducing the convergence of blockchain and IoT and presenting the proposal of BCoT architecture. We further discuss the issues about using blockchain for fifth generation beyond in IoT as well as industrial applications of BCoT. Finally, we outline the open research directions in this promising area.

654 citations

Journal ArticleDOI
TL;DR: This paper reviews the literature, tabulate, and summarize the emerging blockchain applications, platforms, and protocols specifically targeting AI area, and identifies and discusses open research challenges of utilizing blockchain technologies for AI.
Abstract: Recently, artificial intelligence (AI) and blockchain have become two of the most trending and disruptive technologies. Blockchain technology has the ability to automate payment in cryptocurrency and to provide access to a shared ledger of data, transactions, and logs in a decentralized, secure, and trusted manner. Also with smart contracts, blockchain has the ability to govern interactions among participants with no intermediary or a trusted third party. AI, on the other hand, offers intelligence and decision-making capabilities for machines similar to humans. In this paper, we present a detailed survey on blockchain applications for AI. We review the literature, tabulate, and summarize the emerging blockchain applications, platforms, and protocols specifically targeting AI area. We also identify and discuss open research challenges of utilizing blockchain technologies for AI.

570 citations

References
More filters
Book ChapterDOI
09 Dec 2001
TL;DR: A short signature scheme based on the Computational Diffie-Hellman assumption on certain elliptic and hyperelliptic curves is introduced, designed for systems where signatures are typed in by a human or signatures are sent over a low-bandwidth channel.
Abstract: We introduce a short signature scheme based on the Computational Diffie-Hellman assumption on certain elliptic and hyperelliptic curves. The signature length is half the size of a DSA signature for a similar level of security. Our short signature scheme is designed for systems where signatures are typed in by a human or signatures are sent over a low-bandwidth channel.

3,697 citations


"Untangling Blockchain: A Data Proce..." refers background in this paper

  • ..., [59], [60], can be employed (albeit not without major changes in the current design)....

    [...]

Proceedings ArticleDOI
22 Feb 1999
TL;DR: A new replication algorithm that is able to tolerate Byzantine faults that works in asynchronous environments like the Internet and incorporates several important optimizations that improve the response time of previous algorithms by more than an order of magnitude.
Abstract: This paper describes a new replication algorithm that is able to tolerate Byzantine faults. We believe that Byzantinefault-tolerant algorithms will be increasingly important in the future because malicious attacks and software errors are increasingly common and can cause faulty nodes to exhibit arbitrary behavior. Whereas previous algorithms assumed a synchronous system or were too slow to be used in practice, the algorithm described in this paper is practical: it works in asynchronous environments like the Internet and incorporates several important optimizations that improve the response time of previous algorithms by more than an order of magnitude. We implemented a Byzantine-fault-tolerant NFS service using our algorithm and measured its performance. The results show that our service is only 3% slower than a standard unreplicated NFS.

3,562 citations


"Untangling Blockchain: A Data Proce..." refers background or methods in this paper

  • ...Zab [21], Raft [22], Paxos [23], PBFT [17] are popular protocols that are in active use today....

    [...]

  • ...Under this model the overhead of concurrency control is much higher [17]....

    [...]

  • ...In contrast, the original PBFT protocol [17] is deterministic....

    [...]

  • ...PBFT-based Private Hyperledger uses the original PBFT [17]....

    [...]

  • ...These protocols, PBFT [17] being the prime example, are used in private settings because they assume authenticated nodes....

    [...]

Proceedings ArticleDOI
Brian F. Cooper1, Adam Silberstein1, Erwin Tam1, Raghu Ramakrishnan1, Russell Sears1 
10 Jun 2010
TL;DR: This work presents the "Yahoo! Cloud Serving Benchmark" (YCSB) framework, with the goal of facilitating performance comparisons of the new generation of cloud data serving systems, and defines a core set of benchmarks and reports results for four widely used systems.
Abstract: While the use of MapReduce systems (such as Hadoop) for large scale data analysis has been widely recognized and studied, we have recently seen an explosion in the number of systems developed for cloud data serving. These newer systems address "cloud OLTP" applications, though they typically do not support ACID transactions. Examples of systems proposed for cloud serving use include BigTable, PNUTS, Cassandra, HBase, Azure, CouchDB, SimpleDB, Voldemort, and many others. Further, they are being applied to a diverse range of applications that differ considerably from traditional (e.g., TPC-C like) serving workloads. The number of emerging cloud serving systems and the wide range of proposed applications, coupled with a lack of apples-to-apples performance comparisons, makes it difficult to understand the tradeoffs between systems and the workloads for which they are suited. We present the "Yahoo! Cloud Serving Benchmark" (YCSB) framework, with the goal of facilitating performance comparisons of the new generation of cloud data serving systems. We define a core set of benchmarks and report results for four widely used systems: Cassandra, HBase, Yahoo!'s PNUTS, and a simple sharded MySQL implementation. We also hope to foster the development of additional cloud benchmark suites that represent other classes of applications by making our benchmark tool available via open source. In this regard, a key feature of the YCSB framework/tool is that it is extensible--it supports easy definition of new workloads, in addition to making it easy to benchmark new systems.

3,276 citations


"Untangling Blockchain: A Data Proce..." refers methods in this paper

  • ...The WorkloadClient is based on the YCSB driver [91] which preloads each storage with a num-...

    [...]

Proceedings Article
19 Jun 2014
TL;DR: Raft is a consensus algorithm for managing a replicated log that separates the key elements of consensus, such as leader election, log replication, and safety, and it enforces a stronger degree of coherency to reduce the number of states that must be considered.
Abstract: Raft is a consensus algorithm for managing a replicated log. It produces a result equivalent to (multi-)Paxos, and it is as efficient as Paxos, but its structure is different from Paxos; this makes Raft more understandable than Paxos and also provides a better foundation for building practical systems. In order to enhance understandability, Raft separates the key elements of consensus, such as leader election, log replication, and safety, and it enforces a stronger degree of coherency to reduce the number of states that must be considered. Results from a user study demonstrate that Raft is easier for students to learn than Paxos. Raft also includes a new mechanism for changing the cluster membership, which uses overlapping majorities to guarantee safety.

1,811 citations


"Untangling Blockchain: A Data Proce..." refers background or methods in this paper

  • ...Using Raft, Quorum is able to make safe progress even when some authority nodes crash....

    [...]

  • ...Zab [21], Raft [22], Paxos [23], PBFT [17] are popular protocols that are in active use today....

    [...]

  • ...By delegating this check to an entity outside of the blockchain, Corda can justify using Raft for consensus....

    [...]

  • ...Kadena [30] proposes an extension to Raft that handles Byzantine failures....

    [...]

  • ...Quorum [37] employs Raft [22] as the consensus protocol among its authorities....

    [...]