Advantages of blockchain in the context of IoT services
In order for beginners to understand what a blockchain is, it is enough to turn to Coinmarketrate.com , where it is said that in a simplified form it should be perceived as a transaction registry with the following properties:
- Registry data is replicated (copied and distributed) on different nodes so that they exist until all nodes are disabled (the goal is fault tolerance due to redundancy).
- The atomic unit in the blockchain is a transaction (the goal is uniqueness).
- The acceptance of a transaction (from the point of view of reality) is confirmed by a decentralized (for example, democratic) process between nodes (the goal is decentralization).
- The order of transactions is unchanged (the goal is traceability and integrity).
- Transactions are protected from subsequent manipulations using mathematical procedures (the goal is verifiability).
In the context of services, the blockchain system can take on the tasks of a third party (bank, notary, intermediary, etc.). As a rule, intermediaries undertake the task of creating information equality between the parties (exchanges), preventing manipulation of transactions (notaries) or mediation of obligations and requirements (financial market).
In the case of services, intermediaries are responsible for their settlement, providing important processes or transactions, such as the transfer of monetary value. Blockchain systems provide the same functions in a fully automated mode.
The advantage of blockchain-based transactions is that they are secure, confidential, reliable, traceable and transparent. For example, even before the service is put into operation, the client has the opportunity to automatically and in real time request from the blockchain system whether the contractor has enough funds. Therefore, there is no need for a credit check.
In the case of a service, it is important that the parties involved adhere to their agreements (contractual obligations). To ensure this, so-called smart contracts can be used in the blockchain system. It is important to understand here that these smart contracts also “work” in the blockchain. This means that these contracts are as immutable and secure as the transactions themselves.
In these smart contracts, various rules can be defined (what happens if…) that enforce agreements. Thanks to the properties of blockchain technology, it is possible to guarantee integrity, confidentiality and traceability in the execution of a contract or service. It should be noted, however, that the real quality of the service implementation (What is the quality of the service?) it often remains a problem because it can only be defined implicitly. More on that later.
Smart devices can initiate a smart contract based on rules when a need arises, and thereby start processing the service. This does not require interaction with a person, as well as mediation by a third party. However, in order to be able to use this technology in real conditions, a person must initially authorize the final smart devices and initially agree to a smart contract.
Services between autonomous end devices via blockchain – concept
End devices can play different roles in everyday life. The main aim of the Internet of Things is to make things as intelligent as possible due to additional computing power, sensor technologies and robotics and to provide the possibility of autonomous actions (free from human interaction). In the context of services, there are five possible roles that end devices can assume with the growth of intelligence.
The smarter the integration, the less the end devices need to be managed or used by a person (heteronomy) and the more extensive autonomous actions controlled by events (autonomy). As a result, the Internet of Things expands the capabilities of end devices to such an extent that, theoretically, they can perform services completely autonomously.
Now the problem is to guarantee the protective goals of IT security, such as trust, integrity or accountability during the execution of the service. Protection of personal data (confidentiality) and protection against physical damage (security). To solve these intermediary tasks, blockchain technology comes into play. Using the blockchain, you can implement the following functions:
Secure and non-manipulated communication between subjects, its own special currency (the so-called cryptocurrency) as a native means of payment,
- Trust management of monetary values and process control using smart contracts
- Storage of communication traffic and transactions
- Asymmetric encryption of transactions
- Checking the integrity of all transactions
With these functions, a simple service can be implemented between two intelligent end devices.
Blockchain takes on the important tasks of a trustee, which are summarized below in the form of four steps:
- Triggered by an event, an autonomous end device recognizes that it has a need and places an order through a smart contract. By placing an order, the principal transfers the required amount of money to a smart contract, which stores it in trust.
- The blockchain or smart contract knows the identity of the contractors, and now assigns an order to the contractor (for example, through auction mechanisms or by chance).
- The contractor knows that the smart contract has provided a monetary value, and performs the service. Then the contractor informs the smart contract about the completion of the work.
- Now it is necessary to check that the service was performed correctly (the problem of the quality of service implementation in the real world). The framework conditions for the verification stage can be very different, so the verification should be solved taking into account the specifics of the application (example Proof of Concept). After successful verification, the smart contract publishes information that the service was performed correctly – that is, that the customer’s needs were met. With the subsequent transfer of the secured monetary value from the smart contract to the counterparty, the service transaction is completed.
These steps represent an ideal process.
Of course, various problems or errors may occur. For these cases, the relevant rules must be saved in the smart contract. For example, if the service check is negative, then the monetary value should not flow to the contractor, but should be returned to the client. Similarly, the service should not be provided if the customer has not transferred the required amount of money.
In general, the blockchain system provides communication, “rules of the game” and the transaction of monetary values, and thus processes the service. Blockchain approaches can be combined here with contractor selection procedures (auction procedures, mathematical selection procedures, the principle of randomness, etc.). All processes are stored in the blockchain and can be viewed at any time.
Only quality control, that is, quality control of a real service, cannot be carried out by blockchain technology without support in some use cases. There are various approaches to solve this problem. For example, it would be possible to implement certified software into an intelligent end device in a verifiable way. Thus, the quality of service can be indirectly verified by verifying the certificate.
Conclusion
The blockchain takes on the tasks of an intermediary who ensures the correct processing of the service. Thus, in principle, the blockchain can be used wherever it is required to request a clearly defined service and perform it several times according to the same scheme. This is what happens in the field of IoT between smart end devices.