IOTA Selective Permanode
IOTA, a different distributed ledger
The use of DLTs for economic and financial purposes is increasingly frequent but in the industrial sector this technology is struggling to establish itself.
This results from three factors:
– in the industrial sector it is not always essential to publish all data with third parties
– it is essential to have systems that provide predictable performance and costs
– the cost of the service must be proportional to the value of the data which is often very limited individually.
In summary, DLTs are too expensive and slow and these characteristics make them unsuitable for supporting real-time processes, where the security of a DLT would still be useful.
However, this is not absolutely true.
The designers of the best-known DLTs started from the need to guarantee the security of economic transactions and enable the greatest possible participation (of nodes) to obtain a high robustness of the register.
In industrial applications the very high robustness of the register is a desirable feature but does not have a disadvantage in terms of costs and performance. Furthermore, the data entered in the register are not changeable and can only minimally be representative of changes in value, ownership of goods, etc. or managed as “transactions”. Most of the data collected by an industrial system can benefit from the registry simply as a reliable container.
Finally, it must be considered that in DLT it is not a functional alternative to a database: “distribution” and “decentralization” indicated by the D of DLT are organizational characteristics from which the public nature of the register inevitably derives, where “public” means that there cannot be a coordination system that limits users, even if they are selected. In practice, it is not possible to define restrictions on the use of the registry because this would make the system a simple storage. The inevitable effect is that the amount of entries entered (transactions) can tend to infinity.
Obviously you can’t build a system that can reach infinite size, so a (public) DLT will never be able to meet the needs of an indeterminate number of users who can enter an unlimited amount of data.
IOTA is a DLT created specifically to overcome these limitations.
IOTA, no mining, no fees
IOTA is an extremely sophisticated system and over time it has been adapted to meet the needs of multiple use cases that cannot be easily solved by a classic DLT.
Impossible to summarize in a few lines the very large amount of particular characteristics that can produce advantages for the design of systems and applications, including industrial ones.
However, IOTA has three specific features that distinguish it from all other DLTs:
– There is no real mining process, i.e. there is no competition between the validating nodes to obtain rewards, therefore writing information in the register requires an extremely limited amount of energy.
– The validation of the blocks takes place after they have already been published and is performed by the nodes when they publish their own block. This means that writing to the register is not subject to delays due to the validation process.
– The possibility that the nodes have to enter blocks directly into the network (and into the registry) eliminates their scarcity and therefore the need to pay fees to define the priority of entering transactions in the blocks.
IOTA therefore allows you to publish data on a register with a predictable cost (in energy terms, less than 1 mWh) and with a predictable latency (typically less than 500 ms). This makes DLT suitable for transmitting data between different end-points in an asynchronous, secure and reliable way, a very important requirement in complex application contexts.
Data Retention
Even if IOTA is not affected by the limitations of the classic blockchains, it still cannot store unlimited data.
Therefore the nodes eliminate each block, which contains only one transaction or simply data, no longer necessary to validate new transactions. So blocks that contain only data, sooner or later, will certainly be deleted from all nodes.
This can be avoided by inserting the data as attachments to an economic transaction. Until the transaction is “spent”, it will remain in the register and therefore the data will also be kept. However, this method requires you to immobilize a small amount of tokens and is therefore not suitable for handling large volumes.
An alternative solution is to activate a selective permanode that Teleconsys has specifically created (link to the description of the service). It is a plug-in to be installed on nodes that can be programmed to copy blocks received from the node that reflect specific selection criteria into object storage. The node will be able to provide the client with the stored blocks even when they can no longer be found by the other nodes in the network.
It could be argued that, if the data is kept in a single object storage managed by a single node, the use of IOTA is completely useless, but it is not. In fact, before storing the block in its storage, the node produces the “proof of inclusion”, i.e. a digital signature produced using the structural information from the portion of the register that contains the block. This signature is stored with the block and provided to clients when the block is requested.
The signature, i.e. proof that the block has been acquired from the IOTA registry, can be verified by clients with the public data of the IOTA network.
Thanks to this additional information, the node’s private storage becomes a persistent extension of the log portions useful to a specific application.
Obviously storing blocks in only one storage can be dangerous. To resolve this last element Teleconsys provides a Distributed Selective Permanode service based on a committee of dOra nodes (link to dOra) which implements the logic of selective permanode, but replicating the blocks on multiple storages managed by independent nodes.