학술논문

Trustworthy Blockchain Gateways for Resource-Constrained Clients and IoT Devices
Document Type
Periodical
Source
IEEE Access Access, IEEE. 9:132875-132887 2021
Subject
Aerospace
Bioengineering
Communication, Networking and Broadcast Technologies
Components, Circuits, Devices and Systems
Computing and Processing
Engineered Materials, Dielectrics and Plasmas
Engineering Profession
Fields, Waves and Electromagnetics
General Topics for Engineers
Geoscience
Nuclear Engineering
Photonics and Electrooptics
Power, Energy and Industry Applications
Robotics and Control Systems
Signal Processing and Analysis
Transportation
Blockchains
Logic gates
Smart contracts
Peer-to-peer computing
Bitcoin
Testing
Security
Blockchain
Ethereum
IoT
gateways
trust
lightweight nodes
full nodes
Language
ISSN
2169-3536
Abstract
Resource-constrained blockchain clients and the Internet of Things (IoT) devices pose limitations in terms of processing and storing the entire blockchain ledger and mining blocks. Such clients and devices rely on a view of the blockchain provided by full nodes acting as gateways. However, gateway nodes sometimes can provide a distorted view of the blockchain that makes lightweight clients vulnerable to the eclipse attack. When under such an attack, a client cannot differentiate between a forked view of the blockchain and the legitimate blockchain ledger leading to fatal consequences and huge losses incurred. In this paper, we propose a data attestation solution that employs full nodes as validators to attest the responses reported by gateways of lightweight nodes. We leverage smart contracts to give lightweight clients confidence in the data reported as they are unable to validate it from the blockchain network themselves. The system governs the attestation process that comprises submitting attestation requests, approving them, recording the response of validators, and manage payments. Clients can, thereafter, provide their feedback about the validator/gateway performance in the form of a reputation score. We present the proposed system architecture and describe its implementation on the Ethereum blockchain network. We evaluate the proposed solution with respect to functionality testing, cost of execution, and security analysis of the developed smart contracts. We make our smart contracts code and testing scripts publicly available.