Cargando…

Approaching the Communication Constraints of Ethereum-Based Decentralized Applications

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

Descripción completa

Detalles Bibliográficos
Autores principales: Pustišek, Matevž, Umek, Anton, Kos, Andrej
Formato: Online Artículo Texto
Lenguaje:English
Publicado: MDPI 2019
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6603510/
https://www.ncbi.nlm.nih.gov/pubmed/31212715
http://dx.doi.org/10.3390/s19112647
_version_ 1783431521682587648
author Pustišek, Matevž
Umek, Anton
Kos, Andrej
author_facet Pustišek, Matevž
Umek, Anton
Kos, Andrej
author_sort Pustišek, Matevž
collection PubMed
description 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.
format Online
Article
Text
id pubmed-6603510
institution National Center for Biotechnology Information
language English
publishDate 2019
publisher MDPI
record_format MEDLINE/PubMed
spelling pubmed-66035102019-07-19 Approaching the Communication Constraints of Ethereum-Based Decentralized Applications Pustišek, Matevž Umek, Anton Kos, Andrej Sensors (Basel) Article 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. MDPI 2019-06-11 /pmc/articles/PMC6603510/ /pubmed/31212715 http://dx.doi.org/10.3390/s19112647 Text en © 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
spellingShingle Article
Pustišek, Matevž
Umek, Anton
Kos, Andrej
Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title_full Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title_fullStr Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title_full_unstemmed Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title_short Approaching the Communication Constraints of Ethereum-Based Decentralized Applications
title_sort approaching the communication constraints of ethereum-based decentralized applications
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6603510/
https://www.ncbi.nlm.nih.gov/pubmed/31212715
http://dx.doi.org/10.3390/s19112647
work_keys_str_mv AT pustisekmatevz approachingthecommunicationconstraintsofethereumbaseddecentralizedapplications
AT umekanton approachingthecommunicationconstraintsofethereumbaseddecentralizedapplications
AT kosandrej approachingthecommunicationconstraintsofethereumbaseddecentralizedapplications