One of the major challenges in making blockchain technology ready for mass adoption is scalability. Today, most blockchains can only handle a handful of transactions per second, while payment networks like VISA support several thousand transactions per second. There are many different methods to scale blockchains, and Horizen is evaluating two of these possible solutions. One of them is building a Block-DAG protocol, the other is enabling sidechains, but more on sidechains in another article.
The term DAG stands for Directed Acyclic Graph. The structure on the far left is a simple graph, made up of nodes and edges connecting the nodes. In a directed graph, each connection has a direction, indicated by the arrows. A directed acyclic graph (DAG) does not allow circular relationships of nodes like the one you can see in the bottom part of the directed graph.
A block in the Block-DAG is similar to a block in a blockchain. A Block in a DAG also has a block header and contains a number of transactions, just as a block in the blockchain does. Miners mine the block, meaning they attempt to solve an intensive computational task based on choosing an initial random number. The miner that solves the task first gets to create the next block in the chain, therefore deciding the order of transactions. This method of the network coming to a consensus on the order of transactions is the same that is used by most blockchains, namely proof of work (Create a link here to the proof-of-work section?) . We will explain proof of work in more detail in the Technology Section.
The main difference is that each block in the blockchain always references the previous block, while a block in the Block-DAG can reference multiple preceding blocks. Another adjustment is needed to establish a final order within the blocks of a DAG. We also cover how establishing this order works in the technology section of our Academy.
Assuming that both types of blocks contain the same number of transactions, just by looking at the graphic below, it is intuitive that the DAG will process more transactions in a given period of time than the blockchain does. There is more storage capacity in the Block-DAG compared to the blockchain. The DAG introduces “two-dimensionality” to the otherwise linear or one-dimensional data structure of the blockchain and is a promising approach to make decentralized networks scale. If you want to learn about Directed Acyclic Graphs in more detail, feel free to check our article on them in the technology section.
The Block-DAG uses the same consensus mechanism as a blockchain to agree on the order of events, but uses a different structure to connect the individual blocks. The promise of DAGs is to increase the throughput of a decentralized ledger from a few transactions per second to possibly thousands. Time will tell if Block-DAG technology can live up to this promise.