The traditional method of a broker-based networking system where devices rely on a central cloud server to identify and authenticate individual devices will no longer be sufficient in
identifying, connecting, securing and managing a multitude of devices. This is where blockchain, with its distributed-ledger technology, emerges as the go-to technique to manage billions of network nodes and transactions with its enhanced computational requirements.
Blockchain, termed as an internet of value, has the potential to fundamentally change the way we conduct transactions—through the use of autonomous smart contracts. However, blockchain is not a pervasive system; in other words, it is not blended directly into the physical environment. This is made evident in smart contract design, which isolates it from the environment. Thus, distributed applications become a bridge between our physical world and the digital world of blockchain.
The Internet of Things, on the other hand, is a complex pervasive computing system at its core, consisting of devices or sensors that are directly embedded into physical things/environment and convert analog/physical information into digital information (and vice versa). This digital information is then carried over the internet to various applications that use the devices just like other digital resources. One of the key requirements for pervasiveness is that IoT devices have to be autonomous—they must work without any human intervention, especially in the application of smart spaces. Thus, IoT and blockchain technologies work in tandem, creating a symbiotic relationship where blockchain becomes pervasive and IoT becomes autonomous.
For a system to be autonomous, it has to:
- Have an independent agenda (goal, plans, policy and context)
- Demonstrate a capability to make independent decisions through deliberation
- Perform independent execution of actions
The biggest achievement of blockchain technology combined with IoT technology is that, together, they successfully, digitally emulate the circumstantial and agent-causality phenomenon happening in the physical domain. This emulation happens using four important artifacts:
1) IoT systems: permeate and pervade the physical world, perceive the physical information, convert that to digital information and store that on the ledger as a causal chain. Most importantly, they can react to state changes in the ledger and affect the physical world autonomously.
2) Ledger/Blockchain: represents or digitally mirrors the physical world and maintains one or many causal chains in the form of blockchain.
3) Smart Contracts: essentially provide character to the “things”:
- They capture the agenda of an agent, including goals, plans, policy and context.
- They enable agent-to-agent or agent-to-ledger transactions, including sensing or collaborations.
- They achieve inversion of flow control by calling back agents when the state changes in the ledger.
4) Consensus: smart contracts update the ledger state through consensus. In other words, agent causation in the physical world is preceded by causation on the ledger, which in turn is preceded by consensus-based deliberation. Thus, although a smart contract can have its own agenda, it does not affect causation if consensus is not achieved. This is how exactly human actors behave.
Imagine a parking lot is owned by Company A and leased by Company B. The lease agreement is based on a fixed cost and some variable cost, based on revenue generated by the parking lot. Smart cameras, which are owned and operated by Company C—which has a revenue-sharing contract with Company B—have deep-learning-based object-detection capabilities. This enables them to detect cars and different kinds of parking spaces: empty, occupied, reserved, for disabled and with electric charging. Smart cars, which are privately-owned, are IoT-enabled, self-diagnostic and connected to the smart city grid. In this example, the vehicle is a connected car but is not autonomous. The smart electric charging station, which is owned and operated by Company D—which has a transaction-fee-based agreement with Company B—can make micropayments using a cloud-based traditional e-commerce service. We assume that every car is uniquely identified and registered with Company B and this registration includes owner information, method of payment, etc.
Such an IoT ecosystem is modeled using a blockchain and autonomous agents, as follows:
1) Societies: There are four different societies, consisting of multiple autonomous agents: Companies B, C and D, and the smart city. These societies are individual blockchains, which are interconnected by smart contracts and have agreed-on consensus mechanisms. Further, Company B’s parking lot is connected to the city’s blockchain of smart parking lots.
2) Smart Contracts: Capture the policies that govern the behavior of agents within the society, as well as across the societies.
3) Agents: Each agent is a distributed-ledger application, which is driven by a core “Sense-Deliberate-Act” contract. They also use collaboration smart contracts to perform transactions with another agent within the society, or additional translation contracts to do the same across the society. Each agent is running autonomously—i.e., they have their own independent thread of control executed by a smart contract. Each agent is “naturalized” for its environment—i.e., the smart car agent is ported on smart car and is different from the smart camera agent which is ported on camera.
With this basic premise in mind, let’s see a typical scenario as follows:
- Smart Car X’s diagnostic unit indicates that the battery is low. This is sensed by the car’s agent and calls back the reasoner contract, which deliberates based on the current context and invokes the low-battery smart contract.
- This contract uses location information to query the smart city’s ledger to get a list of parking lots—particularly for Company B, because it knows that it has an account with that company. It finds Company B’s parking lot near the targeted destination and collaborates with the parking lot’s supervision agent. This invokes the collaboration contract, which further invokes the translation contract to collaborate with the parking lot blockchain. It finds a free electric charging space and reserves this using the reserve space contract on Company B’s parking lot.
- This contract will, in turn, invoke a contract of Company D’s blockchain to reserve the electric station, which in turn invokes a micropayment contract and also notifies Company C’s smart camera to mark the slot reserved.
- The smart camera agent will start monitoring the space as reserved, so if by any chance someone else tries to park there, it can notify the supervisor.
- The smart car agent gets confirmation of this reservation, notifies the driver to park the car in that parking lot and provides navigation information.
- The driver directs the car based on navigation information, parks in the reserved space and connects the electric charging cable to the car.
- The electric charging station confirms that the smart car is actually the one that reserved the parking lot by doing peer-to-peer collaboration with the smart car. This will invoke the collaboration contract, along with the translation contract if required.
- The charging is complete and a micropayment is charged against the car. The smart camera starts metering the car for parking time simultaneously and checks that it is within the agreement.
- All of these transactions are validated and recorded on the ledger by the policing nodes, which enforce the policies on various ledgers.
As blockchain technology continues to advance—solving some of the problems of scalability, ledger size, performance and different types of consensus—alongside the innovations of IoT systems and deep learning, we will see that more devices will achieve autonomy at the level of human actors.