scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Blockchains and Smart Contracts for the Internet of Things

10 May 2016-IEEE Access (IEEE)-Vol. 4, pp 2292-2303
TL;DR: The conclusion is that the blockchain-IoT combination is powerful and can cause significant transformations across several industries, paving the way for new business models and novel, distributed applications.
Abstract: Motivated by the recent explosion of interest around blockchains, we examine whether they make a good fit for the Internet of Things (IoT) sector. Blockchains allow us to have a distributed peer-to-peer network where non-trusting members can interact with each other without a trusted intermediary, in a verifiable manner. We review how this mechanism works and also look into smart contracts—scripts that reside on the blockchain that allow for the automation of multi-step processes. We then move into the IoT domain, and describe how a blockchain-IoT combination: 1) facilitates the sharing of services and resources leading to the creation of a marketplace of services between devices and 2) allows us to automate in a cryptographically verifiable manner several existing, time-consuming workflows. We also point out certain issues that should be considered before the deployment of a blockchain network in an IoT setting: from transactional privacy to the expected value of the digitized assets traded on the network. Wherever applicable, we identify solutions and workarounds. Our conclusion is that the blockchain-IoT combination is powerful and can cause significant transformations across several industries, paving the way for new business models and novel, distributed applications.
Citations
More filters
Journal ArticleDOI
19 Oct 2018
TL;DR: This paper aims to present a systematic review of the interactions between Big Data and cryptocurrency and serve as the one stop reference directory for researchers with regard to identifying research gaps and directing future explorations.
Abstract: Cryptocurrency has been a trending topic over the past decade, pooling tremendous technological power and attracting investments valued over trillions of dollars on a global scale. The cryptocurrency technology and its network have been endowed with many superior features due to its unique architecture, which also determined its worldwide efficiency, applicability and data intensive characteristics. This paper introduces and summarises the interactions between two significant concepts in the digitalized world, i.e., cryptocurrency and Big Data. Both subjects are at the forefront of technological research, and this paper focuses on their convergence and comprehensively reviews the very recent applications and developments after 2016. Accordingly, we aim to present a systematic review of the interactions between Big Data and cryptocurrency and serve as the one stop reference directory for researchers with regard to identifying research gaps and directing future explorations.

63 citations


Cites background from "Blockchains and Smart Contracts for..."

  • ...The Internet of Things has been widely embedded to nowadays technological life style on a daily basis and its intersections with cryptocurrency technologies are inevitable [43]....

    [...]

  • ...Blockchain technology has shown its advantages and attracted the attention of applications in a wide range of subjects in addition to the finance and banking sector [41], such as smart contracts [42,43], insurance [44], education [45], digital identity [46], healthcare [47], food supply [48], governance [49], energy [50,51], digital rights [52], elections [53], and Internet of Things [54] (to name a few)....

    [...]

Journal ArticleDOI
Yun Chen1, Hui Xie1, Kun Lv1, Shengjun Wei1, Changzhen Hu1 
TL;DR: The experimental results show that DEPLEST meets the architectural and performance needs and that the consensus protocol outperforms the existing proof of work (PoW) and proof of stake (PoS) methods in this application.

63 citations

Journal ArticleDOI
TL;DR: This paper introduces the problem of behavior pattern clustering in blockchain networks and proposes a novel algorithm termed BPC for this problem, evaluating a long list of potential sequence similarity measures, and selecting a distance that is suitable for the behaviorpattern clustering problem.
Abstract: Blockchain holds promise for being the revolutionary technology, which has the potential to find applications in numerous fields such as digital money, clearing, gambling and product tracing. However, blockchain faces its own problems and challenges. One key problem is to automatically cluster the behavior patterns of all the blockchain nodes into categories. In this paper, we introduce the problem of behavior pattern clustering in blockchain networks and propose a novel algorithm termed BPC for this problem. We evaluate a long list of potential sequence similarity measures, and select a distance that is suitable for the behavior pattern clustering problem. Extensive experiments show that our proposed algorithm is much more effective than the existing methods in terms of clustering accuracy.

63 citations


Cites background from "Blockchains and Smart Contracts for..."

  • ...For instance, blockchain technology has found its applications in domains as varied as transaction processing, government cash management, clearing, medicine tracing, gambling, and personal credit management system [4, 6, 10, 11, 20, 29]....

    [...]

Journal ArticleDOI
TL;DR: It is argued that the individual reputation capital of devices and, consequently, the overall reputationCapital of the IoT community can take benefit from the adoption of the proposed approach.
Abstract: The Internet of Things (IoT) makes attractive services available to smart objects and humans. To aim this, IoT devices need high sensing, reasoning, and real-time acting capabilities that can be also obtained by promoting adaptive forms of cooperation machine-to-machine among smart objects. The convergence of IoT and multiagent systems also relies on the association between software agents with IoT devices for exploiting their social attitude of interacting and cooperating for services. However, the choice of reliable partners for cooperation can be very difficult when IoT devices migrate across different environments, where the most part of their members will be unreferenced with respect to their trustworthiness. It is well known that agents reputation can be a viable aspect to consider to form social groups; therefore, a possible solution to this problem is to form groups of agents in each IoT environment, based on their social capabilities. In this respect, the first contribution of this paper is represented by a reputation model focused on building the reputation capital of each agent. Second, an algorithm capable to form groups of agents in IoT environments on the basis of their reputation capital was designed. Finally, since in this contest, it is important to spread reliable and certified information about the device/agent reputation in a distributed environment, the third contribution is represented by the adoption of the blockchain technology to certify the reputation capital. Some experiments we have performed show that the model is capable to detect almost all the misleading agents if their percentage is under a high enough threshold, and that good results in term of group composition are obtained. Moreover, the simulations show that, by adopting our model, malicious devices always pay for services significantly more than honest ones. We argue that the individual reputation capital of devices and, consequently, the overall reputation capital of the IoT community can take benefit from the adoption of the proposed approach.

63 citations


Cites background from "Blockchains and Smart Contracts for..."

  • ...A number of proposals relying on blockchain and smartcontract technologies, to validate transactions by facilitating and supporting the autonomous workflows and services sharing occurring among IoT devices, are described in [72] by highlighting their benefits in terms of payments, trading, shipping, and supply-chain management....

    [...]

01 Jan 2018
TL;DR: In this paper, the authors provide a detailed analysis of consortium blockchains in terms of architectures, technological components and applications, and a practical case study that focuses on the consortium blockchain technology Ethermint is performed in order to highlight its main advantages and limitations.
Abstract: The Blockchain technology has recently attracted increasing interests worldwide because of its potential to disrupt existing businesses and to revolutionize the way applications will be built, operated, consumed and marketed in the near future. While this technology was initially designed as an immutable and distributed ledger for preventing the double spending of cryptocurrencies, it is now foreseen as the core backbone of enterprises by enabling the interoperability and collaboration between organizations. In this context, consortium blockchains emerged as an interesting architecture concept that benefits from the transactions’ efficiency and privacy of private blockchains, while leveraging the decentralized governance of public blockchains. Although many studies have been made on the blockchain technology in general, the concept of consortium blockchains has been very little addressed in the literature. To bridge this gap, this article provides a detailed analysis of consortium blockchains, in terms of architectures, technological components and applications. In particular, the underlying consensus algorithms are analyzed in details, and a general taxonomy is discussed. Then, a practical case study that focuses on the consortium blockchain technology Ethermint is performed in order to highlight its main advantages and limitations. Finally, various research challenges and opportunities are discussed.

62 citations

References
More filters
Journal ArticleDOI
TL;DR: The Albanian Generals Problem as mentioned in this paper is a generalization of Dijkstra's dining philosophers problem, where two generals have to come to a common agreement on whether to attack or retreat, but can communicate only by sending messengers who might never arrive.
Abstract: I have long felt that, because it was posed as a cute problem about philosophers seated around a table, Dijkstra’s dining philosopher’s problem received much more attention than it deserves. (For example, it has probably received more attention in the theory community than the readers/writers problem, which illustrates the same principles and has much more practical importance.) I believed that the problem introduced in [41] was very important and deserved the attention of computer scientists. The popularity of the dining philosophers problem taught me that the best way to attract attention to a problem is to present it in terms of a story. There is a problem in distributed computing that is sometimes called the Chinese Generals Problem, in which two generals have to come to a common agreement on whether to attack or retreat, but can communicate only by sending messengers who might never arrive. I stole the idea of the generals and posed the problem in terms of a group of generals, some of whom may be traitors, who have to reach a common decision. I wanted to assign the generals a nationality that would not offend any readers. At the time, Albania was a completely closed society, and I felt it unlikely that there would be any Albanians around to object, so the original title of this paper was The Albanian Generals Problem. Jack Goldberg was smart enough to realize that there were Albanians in the world outside Albania, and Albania might not always be a black hole, so he suggested that I find another name. The obviously more appropriate Byzantine generals then occurred to me. The main reason for writing this paper was to assign the new name to the problem. But a new paper needed new results as well. I came up with a simpler way to describe the general 3n+1-processor algorithm. (Shostak’s 4-processor algorithm was subtle but easy to understand; Pease’s generalization was a remarkable tour de force.) We also added a generalization to networks that were not completely connected. (I don’t remember whose work that was.) I also added some discussion of practical implementation details.

5,208 citations

Book ChapterDOI
TL;DR: In this article, a group of generals of the Byzantine army camped with their troops around an enemy city are shown to agree upon a common battle plan using only oral messages, if and only if more than two-thirds of the generals are loyal; so a single traitor can confound two loyal generals.
Abstract: Reliable computer systems must handle malfunctioning components that give conflicting information to different parts of the system. This situation can be expressed abstractly in terms of a group of generals of the Byzantine army camped with their troops around an enemy city. Communicating only by messenger, the generals must agree upon a common battle plan. However, one or more of them may be traitors who will try to confuse the others. The problem is to find an algorithm to ensure that the loyal generals will reach agreement. It is shown that, using only oral messages, this problem is solvable if and only if more than two-thirds of the generals are loyal; so a single traitor can confound two loyal generals. With unforgeable written messages, the problem is solvable for any number of generals and possible traitors. Applications of the solutions to reliable computer systems are then discussed.

4,901 citations

Book ChapterDOI
John R. Douceur1
07 Mar 2002
TL;DR: It is shown that, without a logically centralized authority, Sybil attacks are always possible except under extreme and unrealistic assumptions of resource parity and coordination among entities.
Abstract: Large-scale peer-to-peer systems face security threats from faulty or hostile remote computing elements. To resist these threats, many such systems employ redundancy. However, if a single faulty entity can present multiple identities, it can control a substantial fraction of the system, thereby undermining this redundancy. One approach to preventing these "Sybil attacks" is to have a trusted agency certify identities. This paper shows that, without a logically centralized authority, Sybil attacks are always possible except under extreme and unrealistic assumptions of resource parity and coordination among entities.

4,816 citations


"Blockchains and Smart Contracts for..." refers background in this paper

  • ...Because of the Sybil attack [15], consensus in public networks is costly...

    [...]

  • ...anyone can join though, this would be catastrophic because of the Sybil attack [15]: a single entity could join with multiple identities, get multiple votes, and thus influence the network to favor this entity’s interests....

    [...]

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


"Blockchains and Smart Contracts for..." refers background or methods in this paper

  • ...5If more than 3f + 1 nodes are used, then the quorum thresholds listed in [26] may lead to forks....

    [...]

  • ...Tendermint vs PBFT—Tendermint....

    [...]

  • ...Sieve [38], a mechanism used in the HyperLedger Fabric project, augments the PBFT algorithm [26] by adding speculative execution and verification phases, inspired by the execute-verify architecture presented in [39]....

    [...]

  • ...Tendermint [32] provides BFT tolerance and is similar to the PBFT algorithm; however it provides a tighter guarantee with regards to the results returned to the client when more than one third of the nodes are faulty, and allows for a dynamically changing set of set of validators, and leaders that can be rotated in a round-robin manner, among other optimizations [33]....

    [...]

  • ...PBFT works on the assumption that less than one third of the nodes are faulty (f ), which is why say that it requires at least5 3f + 1 nodes....

    [...]

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


"Blockchains and Smart Contracts for..." refers methods in this paper

  • ...popular Raft algorithm [30], is used as a consensus mechanism in Juno [31]....

    [...]