Smart contracts for machine-to-machine communication

Year 2019
Author Yuichi Hanada, Luke Hsiao, Philip Levis
Publisher Stanford University
Link View Research Paper

Blockchain technologies, such as smart contracts, present a unique interface for machine-to-machine communication. The technology can provide a secure, append-only record that can be shared without trust and without a central administrator.

In this paper, the authors research the possibilities and limitations of using smart contracts for machine-to-machine communication by designing, implementing, and evaluating an application for automated gasoline purchases.

Smart contracts allows users to directly address the challenges of transparency, longevity, and trust in IoT applications. However, real-world applications using smart contracts must address their important trade-offs, such as performance and privacy.

IoT applications that automatically perform tasks or exchange assets in behalf of users pose unique design challenges in terms of:

  • A desire for transparency of the actions that a device takes on behalf of user
  • The longevity of these devices compared to traditional software products
  • The common use case of exchanging digital or physical goods or services, which requires a trusted arbiter.

Generally, the use of smart contracts provides transparency, longevity, and allows applications to minimise the need for trusted third parties—which, in the scenario of automated gasoline purchases. can reduce fees paid by a gas station for a typical transaction by 79%. However, Ethereum smart contracts have low transaction
throughput (tens of transactions per second) and 95-percentile transaction latency can be on the order of hours, limiting the types of applications that can be supported. This should be especially considered when it comes to machine-to-machine communication.