This tutorial extends the connection of IoT devices connecting to FIWARE to use an alternate transport. The UltraLight 2.0 IoT Agent created in the previous tutorial is reconfigured to communicate with a set of dummy IoT devices which transfer secure messages over the IOTA Tangle. An additional gateway component is added to the architecture of the previous MQTT tutorial to allow for secure indelible transactions across a distributed ledger network.
The tutorial is mainly concerned with the architecture of the custom components, but uses cUrl commands where necessary, and is also available as Postman documentationContents Details What is IOTA? “Hansel took his little sister by the hand, and followed the pebbles which shone like newly-coined silver pieces, and showed them the way.” ― Jacob Grimm, Grimm's Fairy Tales
The IOTA Tangle is a directed acyclic graph which can be used as a distributed ledger. It is not a traditional blockchain, but works with the concept of a Tangle which contains the current transaction history and links from parents to child transactions which provide a single source of truth in a distributed network. Whenever information is persisted to the tangle it is replicated across all nodes so that any client, anywhere around the world can send valid transactions to a Node.
IOTA positions itself as being an ideal distributed ledger for IoT due to its feeless nature and scalable distributed structure. Obviously when architecting any smart system, the developer needs to compromise between various factors such as price, speed, reliability, security and so on. The previous MQTT tutorial was fast, but contained no security elements and was vulnerable to malicious attack. An IOTA-based IoT system will automatically include secure logging of all events and therefore, could be used to for charging customers on an event-by-event basis.
A hybrid system could also be envisaged where some frequent but low risk transact...