An Introduction to DAG Technology: a New Take on Distributed Ledgers
Throughout the evolution of blockchain, distributed ledger technology (DLT), and cryptocurrency, several different network structures and consensus mechanisms have emerged, beyond traditional proof-of-work blockchains. Among these innovations are proof-of-stake blockchains, byzantine fault tolerant blockchains, and an interesting network structure known as a directed acyclic graph (DAG).
DAGs are not the same as blockchains from an architectural standpoint, though some utilize similar consensus mechanisms, such as those based on delegated proof-of-stake. The network structure of DAGs differs from that of traditional blockchains because node transactions are only chained with other participating node data, creating many distinct chains of transactions. The ‘graph’ part of directed acyclic graph just refers to the idea that nodes in the network are connected to other nodes based on transactions. The ‘directed’ part means those connections have a source and a destination, based on the sender and receiver of funds. ‘Acyclic’ means that the connection path, based on the flow of funds from one node to another, cannot loop back to the originating node. That is, even if some node along the chain sends funds back to the originating node, the originating node will appear again along the chain, since connections can only go one way. Due to this structure, DAGs are more like a tree of many blockchains.
DAGs are no better or worse than traditional blockchains, but just different and useful for different things. They are particularly adept at handling very high transaction throughput, as well as high volumes of data. On the other hand, traditional blockchains are better for security and reliability. That is not to say DAGs are not secure, but they are a relatively new and untested technology.
Since DAGs can handle high transaction throughput, they are useful for working with Internet of Things (IoT) data. IoT data is often streamed in real-time for applications such as self driving cars, medical devices, smart homes, and others. In order for many connected smart devices to function properly, they require high data granularity. DAGs can take IoT sensor data as input and verify and execute related transactions, or anything else than can be triggered with a smart contract. One example of this is the IOTA project, which aims to create a data marketplace for IoT data using a decentralized DAG network structure.
Another example of DAG technology is a cryptocurrency known as nano. Nano uses an architecture known as a “block lattice”, where each node has its own blockchain, consisting of its own send and receive transactions. The network was built to be lightweight, support very high transaction throughput, and execute transactions instantly. Due to the nature of the consensus mechanism, network transactions are feeless. The goal of the nano team is to gain mainstream adoption of the coin as an alternative currency, however, many skeptics argue that this is infeasible due to the lack of an inflation mechanism to encourage spending of the coin. Some believe nano would be better suited to serve a more functional purpose as an exchange coin pairing for major currencies, due to its speed.
DAG architectures are also ideal for distributed ledgers which must support and extremely high volume of data. Dapps for data intensive applications like machine learning would require a DAG architecture to handle the quantity of data being processed and moved around the network at once. Additionally, if using a DAG, fees per mB will be significantly lower for these applications compared to the fees incurred from a standard blockchain.
DAGs are another exciting innovation in distributed ledger technology, and it will be interesting to see their evolution. Internet of Things is a particularly interesting use case, though the DAG architecture is likely suited to a variety of other valuable use cases as well.