When you think of cryptocurrency, the terms "blockchain" or "distributed ledger technology" likely spring to mind. Since the launch of Bitcoin, hundreds of other cryptocurrencies have been created. Most of them rely on similar network architecture. Their data structures allow users to transfer value or to interact with decentralized applications.
In a blockchain, a new block is periodically added to a growing chain of blocks. Each block is connected to the previous one with a sort of cryptographic link (specifically, a hash). In each of these blocks are recent transactions that have been broadcast by users.
But there's often a waiting period between a transaction being broadcast and its inclusion in a block. Think of it like waiting for a train at a station. Depending on the size of the carriages (block size), and the number of other people waiting (pending transactions), you might not even be able to get the next train. Or even the one after that. You can be waiting anywhere from seconds to hours for the transaction to be confirmed.
To many, this is a decent trade-off. After all, it provides a very high degree of security without relying on a centralized coordinator. To others, blockchain technology has an expiration date. Detractors believe that, in the long run, the scalability problems faced by blockchain technology will prevent mass adoption.
Some believe that the future of cryptocurrency payments networks lies in an altogether different architecture – directed acyclic graphs (or DAGs).
What is a DAG?
A DAG is a different kind of data structure – think of it like a database that connects different pieces of information together. "Directed acyclic graph" is a loaded term, so let's start by breaking it down.
Conceptually, DAGs look something like the above. They're made up of vertices (the spheres) and the edges (the lines connecting them). They're directed because they head in one direction (you can see this illustrated with the arrows). They're acyclic (i.e., not cyclic) because the vertices don't loop back on themselves – if you start at one point and follow the graph, you can't return to that same point. This will become clearer shortly...