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
Book ChapterDOI
10 Dec 2018
TL;DR: This paper proposes a blockchain-based data hiding method which interact with the blockchain record, where the external chain is utilized as the controller for the privacy data into carrier video, and removes the need for a trusted third party, enabling autonomous control of privacy data.
Abstract: The protection of secret data based on data hiding technique provides the basic security services for digital video through network transmission. However, the video with secret data is stored with centralized storage, which is vulnerable from external centralized attacks, such as the loss and tampering of the digital video. The protection of copyright and privacy data for digital video is still open issues. In this paper, we propose a blockchain-based data hiding method for data protection in digital video. To improve the integrity certification of secret data and the video, we combined the blockchain and data hiding techniques by adding the hash value to the block with a traceable hash value record; to improve the protection level of privacy data such as copyright related to digital video, we designed a DCT-based data hiding scheme which interact with the blockchain record, where the external chain is utilized as the controller for the privacy data into carrier video. Similar to Bitcoin, This system removes the need for a trusted third party, enabling autonomous control of privacy data.

16 citations

Journal ArticleDOI
11 Jun 2019-Sensors
TL;DR: This work proposed and evaluated three application architectures differing in communication, computation, storage, and security requirements of the Ethereum blockchain for the IoT, and found out that with the appropriate designs and the remote server architecture the authors can strongly reduce the storage and communication requirements imposed on devices, with predictable security implications.
Abstract: Those working on Blockchain technologies have described several new innovative directions and novel services in the Internet of things (IoT), including decentralized trust, trusted and verifiable execution of smart contracts, and machine-to-machine communications and automation that reach beyond the mere exchange of data. However, applying blockchain principles in the IoT is a challenge due to the constraints of the end devices. Because of fierce cost pressure, the hardware resources in these devices are usually reduced to the minimum necessary for operation. To achieve the high coverage needed, low bitrate mobile or wireless technologies are frequently applied, so the communication is often constrained, too. These constraints make the implementation of blockchain nodes for IoT as standalone end-devices impractical or even impossible. We therefore investigated possible design approaches to decentralized applications based on the Ethereum blockchain for the IoT. We proposed and evaluated three application architectures differing in communication, computation, storage, and security requirements. In a pilot setup we measured and analyzed the data traffic needed to run the blockchain clients and their applications. We found out that with the appropriate designs and the remote server architecture we can strongly reduce the storage and communication requirements imposed on devices, with predictable security implications. Periodic device traffic is reduced to 2400 B/s (HTTP) and 170 B/s (Websocket) from about 18 kB/s in the standalone-device full client architecture. A notification about a captured blockchain event and the corresponding verification resulted in about 2000 B of data. A transaction sent from the application to the client resulted in an about 500 B (HTTP) and 300 B message (Websocket). The key store location, which affects the serialization of a transaction, only had a small influence on the transaction-related data. Raw transaction messages were 45 B larger than when passing the JSON transaction objects. These findings provide directions for fog/cloud IoT application designers to avoid unrealistic expectations imposed upon their IoT devices and blockchain technologies, and enable them to select the appropriate system design according to the intended use case and system constraints. However, for very low bit-rate communication networks, new communication protocols for device to blockchain-client need to be considered.

16 citations


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

  • ...In [41] the authors provide a systematic overview of BC technologies and smart contracts for the IoT....

    [...]

Journal ArticleDOI
TL;DR: How digital currency networks such as Bitcoin provides a “trust-less” platform for users to embark on money transfers without necessarily depending on any central trusted establishments such as payment services or financial institutions is described.
Abstract: As the Bitcoin keeps increasing in value compared to other cryptocurrencies, more attention has been given to Blockchain Technology (BT) which is the infrastructure behind the Bitcoin, especially on its role in addressing the problems of the classical centralized system. As a digital currency, Bitcoin is dependent on the decentralized cryptographic tools and peer-to-peer system. The digital currency implements a distributed ledger using Blockchain when verifying any type of transaction. In this paper, the aim is to describe how digital currency networks such as Bitcoin provides a “trust-less” platform for users to embark on money transfers without necessarily depending on any central trusted establishments such as payment services or financial institutions. Furthermore, this work comprehensively overviewed the basic principle that underly BT, such as transaction, consensus algorithms, and hashing. This study also provided a novel classification for blockchain types according to their system architecture and consensus strategy. For each type, our contribution was provided with an example which clearly describes the blockchain features and the transaction steps. Our classification intended to help researchers understand and choose the blockchain for their application. The paper ends with the discussion of the differences between each type

16 citations


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

  • ...Smart contracts refer to small computing programs, which are automatically executed upon meeting certain conditions [26] [27]....

    [...]

Book ChapterDOI
28 Sep 2020
TL;DR: A lack of concrete solutions which integrate the IoT with the blockchain for data distribution purposes for tamper-proof and traceable data distribution in many Internet of Things scenarios is a problem.
Abstract: Distributing data in a tamper-proof and traceable way is a necessity in many Internet of Things (IoT) scenarios. Blockchain technologies are frequently named as an approach to provide such functionality. Despite this, there is a lack of concrete solutions which integrate the IoT with the blockchain for data distribution purposes.

16 citations

Journal ArticleDOI
TL;DR: This article proposes the development of a dynamic consent medical blockchain system called DynamiChain, based on a ruleset management algorithm for handling health examination data, and implemented in a scenario where the exercise management healthcare company provided health management services based on data obtained from the data provider’s hospital.
Abstract: Although blockchain is acknowledged as one of the most important technologies to lead the fourth industrial revolution, major technical challenges regarding security breach and privacy issues remain. This issue is particularly sensitive in applied medical fields where personal health information is handled within the network. In addition, contemporary blockchain-converged solutions do not consider restricted medical data regulations that are still obstacles in many countries worldwide. This implies a crucial need for a system or solution that is suitable for the healthcare sector. Therefore, this article proposes the development of a dynamic consent medical blockchain system called DynamiChain, based on a ruleset management algorithm for handling health examination data. Moreover, medical blockchain-related studies were systematically reviewed to prove the novelty of DynamiChain. The proposed system was implemented in a scenario where the exercise management healthcare company provided health management services based on data obtained from the data provider’s hospital. The proposed research is envisioned to provide a widely compatible blockchain medical system that could be applied in future healthcare fields.

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

    [...]