Introducción
Cuando piensas en criptomonedas, probablemente te vienen a la mente los términos "blockchain" o "tecnología de contabilidad distribuida". Desde el lanzamiento de Bitcoin, se han creado cientos de otras criptomonedas. La mayoría de ellos dependen de una arquitectura de red similar. Sus estructuras de datos permiten a los usuarios transferir valor o interactuar con aplicaciones descentralizadas.
En una cadena de bloques, periódicamente se agrega un nuevo bloque a una cadena de bloques en crecimiento. Cada bloque está conectado al anterior con una especie de enlace criptográfico (en concreto, un hash). En cada uno de estos bloques se encuentran transacciones recientes que han sido transmitidas por los usuarios.
Pero a menudo hay un período de espera entre la transmisión de una transacción y su inclusión en un bloque. Piense en ello como esperar un tren en una estación. Dependiendo del tamaño de los vagones (tamaño del bloque) y del número de personas esperando (transacciones pendientes), es posible que ni siquiera puedas tomar el siguiente tren. O incluso el siguiente. Puede estar esperando desde segundos hasta horas para que se confirme la transacción.
Para muchos, ésta es una compensación decente. Después de todo, proporciona un grado muy alto de seguridad sin depender de un coordinador centralizado. Para otros, la tecnología blockchain tiene fecha de vencimiento. Los detractores creen que, a largo plazo, los problemas de escalabilidad que enfrenta la tecnología blockchain impedirán su adopción masiva.
Algunos creen que el futuro de las redes de pagos con criptomonedas reside en una arquitectura completamente diferente: los gráficos acíclicos dirigidos (o DAG).
¿Qué es un DAG?
Un DAG es un tipo diferente de estructura de datos; considérelo como una base de datos que conecta diferentes piezas de información. "Gráfico acíclico dirigido" es un término cargado, así que comencemos por desglosarlo.

Un gráfico acíclico dirigido.
Conceptualmente, los DAG se parecen a los anteriores. Están formados por vértices (las esferas) y aristas (las líneas que las conectan). Están dirigidos porque van en una dirección (puedes verlo ilustrado con las flechas). Son acíclicos (es decir, no cíclicos) porque los vértices no retroceden sobre sí mismos; si comienzas en un punto y sigues el gráfico, no puedes regresar a ese mismo punto. Esto quedará más claro en breve.
Estas estructuras de datos se utilizan generalmente para modelar datos. Puede confiar en un DAG en los campos científico o médico para observar la relación entre variables y determinar cómo se impactan entre sí. Por ejemplo, podría tomar elementos como la nutrición, los ciclos de sueño y los síntomas físicos, de modo que pueda establecer vínculos entre ellos para establecer cómo afectan a un paciente.
Para nuestros propósitos, estamos más interesados en cómo pueden ayudar a lograr consenso en una red distribuida de criptomonedas.
¿Cómo funciona un DAG?
En una criptomoneda basada en DAG, cada vértice de la estructura representa una transacción. Aquí no hay noción de bloques, ni se requiere minería para ampliar la base de datos. Entonces, en lugar de agrupar las transacciones en bloques, cada transacción se construye encima de otra. Aún así, hay una pequeña operación de prueba de trabajo que se realiza cuando un nodo envía una transacción. Esto garantiza que la red no reciba spam y también valida transacciones anteriores.
Para que se agregue una nueva transacción, debe basarse en las anteriores. Supongamos que Alice crea una nueva transacción. Para que sea reconocida, esta transacción debe hacer referencia a las anteriores. Un poco como cómo un bloque en Bitcoin hace referencia al anterior, pero se hace referencia a múltiples transacciones.
En algunos sistemas, un algoritmo seleccionará sobre qué transacciones (o "consejos") debe basarse una nueva transacción. Las sugerencias con más probabilidades de ser seleccionadas son aquellas que tienen más peso acumulado, una medida de cuántas confirmaciones tiene el camino hacia la sugerencia.
Las transacciones sobre las que Alice construirá no están confirmadas. Pero una vez que Alice hace referencia a ellos, quedan confirmados. La transacción de Alice ahora no está confirmada, por lo que alguien más debe construir sobre ella antes de que sea aceptada.
Es más probable que los usuarios confirmen transacciones con un peso "más pesado" para que el sistema siga creciendo. De lo contrario, no habría nada que impidiera a los usuarios seguir aprovechando transacciones más antiguas.
Con blockchains, la protección contra el doble gasto es bastante fácil. Los mismos fondos no se pueden gastar dos veces en un bloque: los nodos pueden detectar fácilmente cualquier intento y rechazarán cualquier bloque que contenga transacciones conflictivas. Dado que para los mineros es muy caro producir bloques, se les incentiva a jugar limpio.
Los DAG también tienen un mecanismo para evitar el doble gasto. Es algo similar, pero sin mineros. Cuando un nodo confirma transacciones más antiguas, evalúa un camino completo de regreso a la primera transacción del DAG para asegurarse de que el remitente tenga un saldo suficiente. Podría haber varias rutas, pero solo es necesario verificar una.

Si los usuarios construyen sobre una ruta no válida, corren el riesgo de que se ignore su propia transacción. El suyo podría ser legítimo, pero como el anterior no lo era, nadie querrá extender ese camino en particular.
Al principio parece poco intuitivo: ¿no podría terminar en una situación en la que existen múltiples ramas que no se conocen entre sí? Entonces, ¿no podría la gente gastar los mismos fondos en estas diferentes ramas?

Efectivamente es una posibilidad, pero se resuelve con un algoritmo de selección que favorece las puntas con mayor peso acumulado. Eso significa que, con el tiempo, acabarás con una rama mucho más fuerte que el resto. Los más débiles serán abandonados y la red seguirá basándose en el más pesado.
Al igual que con las cadenas de bloques, no existe una finalidad absoluta: nunca se puede estar 100% seguro de que una transacción no se revertirá. Es increíblemente improbable, pero en teoría se podría "deshacer" un bloque de Bitcoin o Ethereum, revirtiendo todas las transacciones que contiene. Cuantos más bloques se agreguen después de aquel en el que se encuentra su transacción, más confianza podrá tener en ella. Por eso se recomienda esperar seis confirmaciones antes de gastar fondos.
En un DAG como Tangle de IOTA, existe una idea de confianza de confirmación. El algoritmo de selección se ejecuta 100 veces y usted cuenta cuántas veces su transacción ha sido aprobada directa o indirectamente en los consejos seleccionados. Cuanto mayor sea el porcentaje, más confianza podrá tener en que su transacción permanecerá "resuelta".
Puede parecer que esto conduce a una mala experiencia de usuario. Pero ese no es el caso. Si Alice le envía a Bob 10 MagicDAGTokens, no necesita preocuparse por seleccionar las puntas correctas del gráfico. Debajo del capó, su billetera podría hacer lo siguiente:
Selecciona propinas pesadas (recuerda, estas son las que tienen más confirmaciones acumuladas).
Siga el camino de regreso a través de transacciones anteriores para asegurarse de que las propinas tengan un saldo suficiente para gastar.
Una vez satisfechos, agregan su transacción al DAG, confirmando las transacciones en las que se basan.
Para Alice, esto se parecerá al flujo de trabajo normal de las criptomonedas. Ingresa la dirección de Bob y la cantidad que desea gastar, luego presiona enviar. La lista anterior es la Prueba de trabajo que ejecuta cada participante al crear una transacción.
➠ ¿Quieres empezar a utilizar criptomonedas? ¡Compre Bitcoin en Binance!
Pros y contras de los gráficos acíclicos dirigidos.
Ventajas de los DAG
Velocidad
Sin restricciones de tiempos de bloqueo, cualquiera puede transmitir y procesar sus transacciones en cualquier momento. No hay límite en la cantidad de transacciones que envían los usuarios, siempre que confirmen las más antiguas a medida que lo hacen.
Sin minería
Los DAG no utilizan algoritmos de consenso PoW como estamos acostumbrados. Por tanto, su huella de carbono es una fracción de la de las criptomonedas que dependen de la minería para proteger su red blockchain.
Sin tarifas de transacción
Como no hay mineros, los usuarios no necesitan pagar tarifas para transmitir sus transacciones. Dicho esto, algunos requieren que se pague una pequeña tarifa a tipos especiales de nodos. Las tarifas bajas (o mejor, cero tarifas) son atractivas para los micropagos, ya que su propósito se ve frustrado con importantes tarifas de red.
Sin problemas de escalabilidad
Sin restricciones por los tiempos de bloque, los DAG pueden procesar muchas más transacciones por segundo que las redes blockchain tradicionales. Muchos defensores creen que esto los hará valiosos en los casos de uso de Internet de las cosas (IoT), donde todo tipo de máquinas interactuarán entre sí.
Contras de los DAG
No completamente descentralizado
Los protocolos que dependen de DAG tienen varios elementos de centralización. Para algunos, supuestamente es una solución a corto plazo para iniciar la red, pero queda por ver si los DAG pueden prosperar sin la intervención de terceros. De lo contrario, se exponen a vectores de ataque que eventualmente podrían paralizar sus redes.
No probado a escala
Aunque las criptomonedas basadas en DAG existen desde hace algunos años, les queda un largo camino por recorrer antes de que se utilicen de forma generalizada. Como tal, es difícil predecir qué incentivos podrían tener los usuarios para explotar el sistema en el futuro.
Pensamientos finales
Los gráficos acíclicos dirigidos son sin duda una tecnología interesante para construir redes de criptomonedas. Hasta ahora, hay relativamente pocos proyectos que utilizan la estructura de datos y aún tienen que evolucionar por completo.
Dicho esto, si pueden aprovechar su potencial, podrían impulsar ecosistemas enormemente escalables. La tecnología DAG tiene innumerables casos de uso en áreas que requieren un alto rendimiento y sin tarifas, como en el Internet de las cosas (IoT) y los micropagos.



