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
Proceedings ArticleDOI
01 Nov 2018
TL;DR: This application is a platform for sharing (buying and selling) measurements of IoT weather sensors and operates on the Ethereum blockchain, acting as a marketplace for IoT sensor data, using the Sensing-as-a-Service (S2aaS) business model combined with blockchain.
Abstract: An increasing number of people, organizations and corporations are expressing their interest in the decentralization technology of the blockchain. The creation of the blockchain marks the time when we start building distributed peer-to-peer networks consisting of non-trusting members that interact with each other without a trusted intermediary but in a verifiable manner. In this paper, we propose a decentralized application (DApp) based on blockchain technology for sharing Internet of Things (IoT) sensors’ data, and demonstrate various challenges addressed during the development process. This application combines blockchain technology with IoT and operates through smart contracts that are executed on the Ethereum blockchain. More specifically the application is a platform for sharing (buying and selling) measurements of IoT weather sensors and operates on the Ethereum blockchain, acting as a marketplace for IoT sensor data. This application applies the Sensing-as-a-Service (S2aaS) business model combined with blockchain.

32 citations


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

  • ...The technology and the ideas behind blockchain evolved since then and we now realize that its potential goes beyond cryptocurrencies [8], such as IoT applications [9], applications for the government sector [10], [11], funding mechanisms [12] and many more....

    [...]

  • ...The applicability of blockchain technology in the Internet of Things sector is examined in [9]....

    [...]

Journal ArticleDOI
TL;DR: In this paper, the state-of-the-art non-interactive zero-knowledge argument schemes and their applications in confidential transactions and private smart contracts on blockchain are surveyed.
Abstract: We survey the state-of-the-art non-interactive zero-knowledge argument schemes and their applications in confidential transactions and private smart contracts on blockchain. The main goal of this paper is to serve as a reference for blockchain application developers in finding the most suitable scheme for a particular use case. We give an overview and compare the state-of-the-art protocols for confidential transactions and private smart contracts regarding the protection of the transaction graph and amounts, data and functionality. However, our main focus is on state-of-the-art zero-knowledge argument schemes. We briefly describe their backgrounds, proof lengths and computational complexities and discuss their cryptographic security models. Our focus is on seminal, otherwise notable and, especially, implemented methods that are ready to be applied in practice. We also survey the existing implementations of transforming computations into circuit representations required by those methods. We note that the existing schemes have different strengths and drawbacks regarding usability, setup, proof length and proving and verification costs.

32 citations

Journal ArticleDOI
TL;DR: In this paper, the authors proposed a coordinated satellite-terrestrial network to create efficient blockchains and derived a network scheduling strategy for the proposed architecture, which can support blockchains for higher efficiency.
Abstract: Blockchain has emerged as a promising technology that can guarantee data consistency and integrity among distributed participants. It has been used in many applications of the Internet of Things (IoT). However, since IoT applications often introduce a massive number of devices into blockchain systems, the efficiency of the blockchain becomes a serious problem. In this article, we analyze the key factors affecting the efficiency of blockchain. Unlike most existing solutions that handle this from the computing perspective, we consider the problem from the communication perspective. In particular, we propose a coordinated satellite-terrestrial network to create efficient blockchains. We also derive a network scheduling strategy for the proposed architecture. Simulation results demonstrate that the proposed system can support blockchains for higher efficiency. Moreover, several open research issues and design challenges will be discussed.

32 citations

Journal ArticleDOI
TL;DR: It is proved that emerging blockchain technology provides a solution for the protection and management of sensitive personal genomic data because of its decentralization, traceability, encryption algorithms, and antitampering features.
Abstract: Background: The rapid development of genetic and genomic technologies, such as next-generation sequencing and genome editing, has made disease treatment much more precise and effective. The technologies’ value can only be realized by the aggregation and analysis of people’s genomic and health data. However, the collection and sharing of genomic data has many obstacles, including low data quality, information islands, tampering distortions, missing records, leaking of private data, and gray data transactions. Objective: This study aimed to prove that emerging blockchain technology provides a solution for the protection and management of sensitive personal genomic data because of its decentralization, traceability, encryption algorithms, and antitampering features. Methods: This paper describes the case of a blockchain-based genomic big data platform, LifeCODE.ai, to illustrate the means by which blockchain enables the storage and management of genomic data from the perspectives of data ownership, data sharing, and data security. Results: Blockchain opens up new avenues for dealing with data ownership, data sharing, and data security issues in genomic big data platforms and realizes the psychological empowerment of individuals in the platform. Conclusions: The blockchain platform provides new possibilities for the management and security of genetic data and can help realize the psychological empowerment of individuals in the process, and consequently, the effects of data self-governance, incentive-sharing, and security improvement can be achieved. However, there are still some problems in the blockchain that have not been solved, and which require continuous in-depth research and innovation in the future.

32 citations


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

  • ...No record on the blockchain can be tampered with by any individual node [29]....

    [...]

  • ...A smart contract contains a set of rules that help the parties to the smart contract interact automatically [29]....

    [...]

Journal ArticleDOI
TL;DR: In this paper, the authors propose to use public blockchain and self-enforcing smart contracts to construct virtual power plants (VPPs) of prosumers to provide energy services. But the work in this paper is focused on the virtual aggregation models in which the small-scale prosumers work together on a larger scale to gain benefits that could not be obtained on an individual basis.
Abstract: The deployment of small-scale renewable energy sources will transform the management of energy grids towards more decentralized solutions in which the prosumers will have a more active role. Regulatory and market barriers are driving the implementation of virtual aggregation models in which the small-scale prosumers work together on a larger scale to gain benefits that could not be obtained on an individual basis. In this paper, we propose to use public blockchain and self-enforcing smart contracts to construct Virtual Power Plants (VPPs) of prosumers to provide energy services. A model has been defined for capturing the prosumer level constraints in terms of available energy profiles and energy service requirements enabling their optimal aggregation in hierarchical structures. A lightweight decentralized solution for VPPs construction is implemented using smart contracts enabling its efficient running on the public blockchain. Smart contracts are encoding the model constraints and are defining functionalities for prosumers to initiate or join a VPP implementing the complete chain of Offer-Operate-Measure-Remunerate actions. The VPP will be managed on top of a distributed ledger technology offering decentralized functionality for tracking and validating the delivery of energy based on the blockchain transactions and for energy and financial settlement, the remuneration being done according to the amount of energy provided by individual prosumers. Experimental results show that the proposed solution runs successfully on the public blockchain with good execution time and can address Balancing Responsible Party requests for additional generation. The overhead in terms of gas consumption and transactional throughput stays within reasonable boundaries.

32 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]....

    [...]