The Internet of Things (IoT) is the collection of billions upon billions of devices (“things”) connected to the Internet and purposed to enable direct interactions between the physical world as well as computer-based systems. Things" are a wide variety of electronic and electromechanical devices including smart thermostats, lights, watches, mobile phones, sensors, and actuators, as well as microcontrollers, among others.
Ensuring security and authenticity of these devices is challenging since they often have resource constraints such as low power requirements, low area budget, limited memory, and/or extremely low-cost. Some lack MAC addresses in their wireless protocols as well. Trappe et al. showed that the power constraint in IoT edge devices limits encryption functionality of sensor nodes, which leads to poorly encrypted communication or no encryption at all. In a different study, HP revealed that almost 70% of loT devices did not encrypt communications to the Internet or the local network. These deficits open vulnerabilities for adversaries. Furthermore, encryption, if present, is no guarantee of identity, cloned, tampered, and/or compromised devices.
This results in the use of Distributed Ledger Technology (blockchain technology) to identify each edge device uniquely without the need for end-users to contact the original device manufacturer for provenance information (such as identity). Blockchains are modern distributed data structures designed originally for cryptocurrencies that achieve strong global consensus (via mining). Notable are Bitcoin, Ethereum, dash coin, qitmeercoin, though there are many others. Key features include: block structure, lack of centralized control, and a consensus (mining) algorithm.
For cryptocurrencies, this is typically a hard task, Proof-of-Work (PoW) or Proof-of-Stake (PoS) These computational proofs force miners to perform a signiﬁcant task; the one ﬁnalizing the task ﬁrst gets rewarded, and mines a new block. That block is then shared throughout the ledgers (the copies of the blocks in each miner’s server). Because of the sequential, cryptographic hashing in a given block of the previous block, it is computationally infeasible to rewrite history. Stability is maintained in case of simultaneous mining; for instance, a longest-chain methodology is used in Bitcoin if two miners should both produce a valid block within a short time interval. Certain Blockchains support smart contracts; a smart contract is a script run across the Blockchain as a side-effect of mining that allows calculations suitable for creating escrow-like operations, key-value data sets, and many emerging and complex ﬁnancial instruments.