So far, we have discussed the direct implications of Coordicide for the IOTA network and its underlying technology. However, the Coordicide project enables much more than just a “better” network.

There are indirect implications that are equally fascinating, but which might not be immediately obvious. While this website does not have the scope to cover these implications in depth, we still want to offer some initial discussions around a few of the most important features.

Reliable Timestamps

Instead of directly voting on the fate of transactions, we may instead vote on the credibility of timestamps. Here ‘credible’ means that the difference between the issuing timestamp of a transaction and its arrival time to the nodes is not above a certain threshold.

Whether a transaction is liked can then be locally derived i.e. by preferring the earliest transaction with a credible timestamp in the presence of conflicts. This has multiple benefits:

  • Even devices that do not have full knowledge about the ledger state can take part in the voting process. This is extremely beneficial for syncing nodes and the IoT environment where devices have unreliable connections.
  • Since the network can reach consensus on which transactions carry credible timestamps, we can start trusting timestamp values, as required for the implementation of smart contracts.

An inability to establish an overall order has been one of the biggest drawbacks of DAG-based DLTs in relation to “smart contracts”.

Multiple Tangles (domains)

Without the Coordinator, it is possible to have multiple Tangles coexisting as separate domains. Each domain can implement a different logic for the transactions it processes (through different IXI modules) and associate a different meaning to the tokens it contains. Even though these domains do not necessarily share the same rules, it is still possible that transactions from one domain refer to data from another domain.

This will enable us to model extremely complex use cases with very simple building blocks. For example, resource tokens in one domain can represent the right to access certain resources, whereas asset tokens in another domain can represent the ownership of a share of a certain asset.

In addition to adding a lot of flexibility to IOTA, the modular approach enables a way of sharding network activity into separate domains, and thereby further increase IOTA’s scalability. For example, a “data-only” Tangle that contains only data transactions could be separated from a Tangle that contains only value transactions. Since data transactions can never be conflicting, transactions in this Tangle could “confirm” instantly without the involvement of any consensus mechanism. This would enable a wide array of IoT use cases that depend on immutable data.

Different data structures for every domain

Since the Tangle is the most generic form of DAG — with bundles being able to reference 1 to n other transactions — it will now be possible to build completely different data structures tailored to the specific needs of a use case. By implementing a different tip selection algorithm, one could build a blockchain-like structure where the trunk and branch of a transaction always reference the previous transaction. Similarly structures like “block lattices” could easily be emulated using a different tip selection algorithm. There is really no limit to the possibilities. The modular approach guarantees the ultimate freedom of the protocol.

Additional rules encoded in the signature message fragment

Since every transaction carries a “signature message fragment” that can contain arbitrary data, it is possible to encode more complex behaviors (such as certain conditions for the application of a transaction, or side-effects that are triggered automatically). These can then be parsed and applied by the nodes of that specific domain.

IXIIOTA eXtending Interface, a framework to extend the functionality of an IOTA node by reacting to incoming transactions and/or providing additional API calls.