¿Qué es un grafo acíclico dirigido (DAG) en cripto?

· 5 min read

Un grafo acíclico dirigido, o DAG por sus siglas en inglés, es una herramienta de modelado y organización de datos que se utiliza habitualmente en las criptomonedas.

A diferencia de una blockchain, que se compone de bloques, los grafos acíclicos dirigidos tienen vértices y aristas. Así, las transacciones cripto se registran como vértices y se van apilando unas sobre otras. Igual que en una blockchain, sin embargo, las transacciones también llegan al DAG a través de nodos. Para enviar una transacción, un nodo debe completar tareas de prueba de trabajo (PoW).

En esencia, si un sistema blockchain se parece a una cadena, el de un DAG se parece más a un grafo. Hoy el modelo DAG se contempla en el sector como posible sustituto de la blockchain en el futuro, gracias a su eficiencia en el almacenamiento de datos y en el procesamiento de transacciones en línea.

El modelo DAG también se ve como una posible respuesta al problema actual de descentralización en cripto. Con este modelo, los mineros no tienen que competir por los nuevos bloques que se añaden a la cadena.

Como los nodos se desarrollan al mismo tiempo, las transacciones también pueden procesarse más rápido. Los desarrolladores ven en el DAG una solución mejor y más segura, capaz de mejorar la utilidad de una red a medida que gane escalabilidad.

¿Cómo funciona un DAG?

Como decíamos, un grafo acíclico dirigido es más eficiente almacenando datos. Su diseño es similar a un árbol, con nodos interconectados como 'ramas'.

Dado que cada nodo puede tener más de una raíz padre, el modelo permite validar más transacciones a la vez. El motivo es que los usuarios no tienen que esperar a que una transacción termine para procesar otra.

Así, en un grafo acíclico dirigido cada nueva transacción debe hacer referencia a transacciones anteriores antes de ser aceptada por la red. Es lo mismo que ocurre con los bloques de una blockchain, que referencian bloques previos. El razonamiento es que una transacción solo queda efectivamente confirmada cuando otra transacción la referencia, y así sucesivamente.

En un DAG, cada vértice representa una transacción. No hay bloques, por lo que tampoco hace falta minería. Las transacciones se construyen unas sobre otras en lugar de agruparse en bloques. Después, como acabamos de mencionar, se realizan tareas de prueba de trabajo cada vez que un nodo envía una transacción, para validar las anteriores y evitar el spam.

Por norma, en una criptomoneda basada en DAG las transacciones nuevas se construyen sobre otras más antiguas. La diferencia principal con la blockchain es que en un DAG se puede hacer referencia a varias transacciones, y no solo a una cada vez.

Algunos sistemas cuentan con un algoritmo que elige las 'puntas' (tips) o transacciones sobre las que seguir construyendo en función del peso acumulado, es decir, del número de confirmaciones que conducen hasta esa punta.

La protección frente al doble gasto en los DAG funciona mediante nodos que confirman transacciones más antiguas revisando un camino que se remonta hasta la primera transacción del DAG. Así se comprueba si el remitente tiene saldo suficiente. Si un usuario construye sobre un camino inválido, esa transacción corre el riesgo de ser ignorada.

Los conflictos derivados de caminos distintos se resuelven con un algoritmo de selección que favorece las puntas con mayor peso acumulado.

¿Para qué se usan los DAG?

El modelo DAG busca abordar dos debilidades atribuidas a la tecnología blockchain: la descentralización y la escalabilidad. También pretende mejorar la seguridad y la facilidad de uso.

¿De qué manera?

  • En la blockchain de Bitcoin o en la plataforma Ethereum, los mineros solo pueden crear un bloque cada vez. Por eso las nuevas transacciones solo se validan cuando la anterior ha terminado. El modelo DAG elimina esos bloques y añade las transacciones directamente al registro.

Al desaparecer los bloques, el modelo DAG no necesita minería. Esto significa que hace falta menos electricidad para sostener la red. Los DAG ofrecen además otras ventajas, como:

  • Alta velocidad de transacción, sin el freno de la creación de bloques
  • Sin mineros tampoco hay comisiones de transacción
  • Menor consumo de energía y beneficios medioambientales frente a la minería

Ahora bien, el uso de los DAG en cripto está todavía en sus primeras fases. A diferencia de las blockchains, aún no están plenamente descentralizados. Por eso se emplean sobre todo para poner redes en marcha, y todavía no como un sistema con el que levantar una red estable.

¿Qué criptomonedas usan DAG?

Antes era impensable hablar de criptomonedas sin pensar en la blockchain. Con el modelo DAG, sin embargo, ya se han construido con éxito varias criptomonedas sobre esta tecnología.

Algunos ejemplos son Obyte, IOTA y Nano, por citar unos pocos. Aunque todavía es relativamente nueva, la estructura DAG muestra un potencial enorme. Como decíamos, varios proyectos ya la han utilizado con buenos resultados. Los más conocidos son:

Obyte

Obyte, antes ByteBall, es una criptomoneda totalmente independiente de la blockchain, ya que implementa la estructura DAG. Aun así, las transacciones de Obyte sí tienen comisión.

Esto se debe a que la red de Obyte utiliza un sistema de validadores que permite una doble comprobación de las transacciones. Emplea un algoritmo de consenso basado en testigos (witnesses): usuarios de confianza y buena reputación que actúan como validadores.

Obyte también admite transacciones no rastreables, así como contratos inteligentes.

IOTA

IOTA, pensada para aplicaciones del Internet de las cosas, lanzó su red de 'blockchain sin bloques' en 2016. La idea de IOTA es que todos los usuarios se conviertan de facto en mineros. Por ejemplo, para validar una transacción, un usuario debe verificar dos.

IOTA utiliza una red formada por nodos y tangles (grupos de nodos) que sirven para hacer el proceso de validación más rápido y eficiente.

Todos los usuarios aportan una pequeña cantidad de potencia para el mantenimiento de la red, y todos participan también en el consenso. Esto permite que la red sea a la vez muy descentralizada y escalable.

Las transacciones apenas tienen coste; por eso IOTA se considera una criptomoneda alternativa rentable para los micropagos.

Nano

Nano es otra criptomoneda que funciona con el sistema DAG. Nano tiene blockchains independientes conectadas por nodos, en lo que se conoce como tecnología block-lattice. En realidad, es una mezcla de DAG y blockchain.

Cada usuario tiene su propia cartera y su propia blockchain. Solo el usuario puede introducir cambios en su cartera o blockchain. Las transacciones se completan cuando el emisor y el receptor realizan la operación en sus respectivas blockchains.

Nano ofrece a sus usuarios comisiones cero, además de una alta velocidad de transacción.

¿Cuál es el papel del DAG en la blockchain?

El DAG puede verse como una alternativa viable a la blockchain, aunque todavía necesita ajustes. El modelo DAG busca resolver problemas habituales de la tecnología blockchain, como el coste, la velocidad y la adaptabilidad.

De hecho, ambas tecnologías registran transacciones en un libro contable digital y persiguen el mismo objetivo. Lo que las diferencia es sobre todo la estructura que utiliza cada modelo para almacenar los datos.

DAG frente a blockchain

Tanto las blockchains como los DAG registran transacciones en un libro distribuido, pero por vías distintas.

A continuación, una comparación rápida de ambos en cuanto a ventajas e inconvenientes:

Ventajas del DAG

  • Adecuado para microtransacciones y grandes volúmenes de operaciones
  • Elimina la necesidad de hardware de minería
  • Las comisiones pueden reducirse notablemente
  • Menor consumo energético

Inconvenientes del DAG

  • Vulnerable a ataques por el bajo volumen de transacciones
  • Todavía en pañales; aún no ha alcanzado niveles significativos de descentralización

Ventajas de la blockchain

  • Consolidada y ampliamente utilizada por criptomonedas como Bitcoin y Ethereum
  • Transparente e inalterable, muy segura
  • Rentable para transacciones de alto valor

Inconvenientes de la blockchain

  • Exige mucho almacenamiento y ancho de banda de red
  • Consume gran cantidad de energía
  • Comisiones de transacción elevadas

Al final del día, decidir qué modelo usar dependerá de los objetivos de negocio de cada uno. Como hemos visto, cada modelo tiene sus fortalezas y sus debilidades, y puede que uno encaje mejor según tus necesidades.