O Directed Acyclic Graph (DAG) é uma estrutura de grafo acíclico dirigido, que tem vindo a conquistar relevância no universo da tecnologia blockchain como alternativa às arquiteturas tradicionais em cadeia. Ao contrário das blockchains convencionais, onde as transações são organizadas de forma linear em blocos sequenciais, o DAG permite que vários nós adicionem transações simultaneamente à rede, criando uma malha multidirecional em expansão, onde cada nó pode referenciar vários nós predecessores. Este modelo elimina os limites de processamento impostos pelos blocos individuais, aumentando significativamente a capacidade de throughput dos sistemas e reduzindo tanto o tempo de confirmação como as taxas de transação, tornando-se especialmente vantajoso para cenários de micropagamentos de alta frequência.
O conceito Directed Acyclic Graph surgiu no contexto da teoria dos grafos, descrevendo uma estrutura na qual todas as arestas têm direção e não existe qualquer caminho que permita regressar ao ponto de partida (daí ser acíclico). Esta abordagem tem ampla aplicação em informática, nomeadamente na representação de dependências, programação de tarefas e resolução de diversos problemas computacionais.
No sector blockchain, a adoção da tecnologia DAG iniciou-se por volta de 2015, numa altura em que blockchains como Bitcoin e Ethereum enfrentavam sérias limitações de escalabilidade. O Tangle, introduzido pelo projeto IOTA em 2016, foi pioneiro na implementação de DAG em registos distribuídos, seguindo-se projetos como Byteball (atualmente Obyte) e Nano, que também optaram por estruturas DAG nos seus sistemas de registo distribuído.
A evolução da tecnologia DAG na blockchain tem como principal objetivo ultrapassar os constrangimentos de throughput, os atrasos nas transações e os custos elevados das blockchains convencionais, mantendo a descentralização e a segurança. Com o crescimento da procura por soluções Internet das Coisas e micropagamentos, as arquiteturas DAG têm ganho protagonismo pela sua aptidão para processar micropagamentos de forma eficiente.
O mecanismo operacional do Directed Acyclic Graph nas plataformas blockchain distingue-se fundamentalmente das blockchains tradicionais:
Num DAG, cada nova transação valida múltiplas transações anteriores, de forma direta ou indireta, formando uma rede de referências cruzadas. As novas transações integram o grafo ao selecionar e validar transações ainda não suficientemente confirmadas (conhecidas como "pontas"), servindo-se destas como pontos de referência. Este modelo torna a confirmação das transações num processo colaborativo, em que todos os intervenientes da rede contribuem para o consenso geral.
Os sistemas DAG recorrem habitualmente à acumulação de peso para aferir a validade das transações. À medida que uma transação é referenciada por transações subsequentes, de forma direta ou indireta, o seu peso aumenta, reforçando o grau de confirmação. Quando esse peso supera o limiar estabelecido, a transação é considerada "confirmada".
Cada projeto DAG implementa mecanismos próprios:
O Tangle da IOTA utiliza o algoritmo "Markov Chain Monte Carlo" para selecionar transações a validar e baseia-se no conceito de "peso cumulativo" para garantir a segurança da rede.
A Nano aposta na estrutura "Block-lattice", em que cada conta possui uma cadeia própria, com transações segmentadas em operações "send" e "receive", formando uma estrutura DAG especializada.
A Conflux adota uma arquitetura DAG "Tree-Graph", conjugando Prova de Trabalho com o protocolo GHOST para gerir potenciais conflitos.
Apesar do potencial da tecnologia DAG para superar as limitações de escalabilidade das blockchains tradicionais, subsistem riscos e desafios específicos:
Preocupações de Segurança: Os sistemas DAG podem estar mais expostos a ataques em cenários de baixo volume transacional, já que um atacante pode acumular poder computacional suficiente para manipular o consenso quando a atividade da rede está reduzida. Alguns projetos DAG (como a IOTA em fases iniciais) recorreram a coordenadores centrais para mitigar ataques, levantando questões sobre centralização.
Complexidade de Verificação: Nas arquiteturas DAG, a determinação da finalização das transações e a resolução de conflitos tornam-se mais exigentes. As relações de referência entre transações podem ser complexas, exigindo algoritmos sofisticados para assegurar a consistência do estado global do DAG.
Desafios de Consenso: Estabelecer o estado global e a ordem das transações em sistemas DAG é mais difícil do que em blockchains convencionais, sobretudo em presença de transações conflitantes. Os projetos adotam abordagens variadas para este problema, mas ainda não existe uma solução definitiva.
Questões de Maturidade: Em comparação com as blockchains tradicionais, validadas em mais de uma década de operação, os sistemas baseados em DAG são relativamente recentes, carecendo de validação prática em larga escala e de longa duração. Muitas garantias teóricas de segurança aguardam confirmação empírica.
Elevada Barreira Técnica: A implementação e compreensão dos sistemas DAG são frequentemente mais complexas do que nas blockchains tradicionais, o que se traduz numa barreira técnica significativa para programadores, auditores e utilizadores comuns.
A tecnologia Directed Acyclic Graph constitui uma via evolutiva relevante para a arquitetura blockchain, ao apresentar uma abordagem potencial ao trilema da blockchain (descentralização, segurança e escalabilidade). Embora o DAG permaneça numa fase embrionária e enfrente múltiplos desafios, as suas vantagens em ambientes de elevado desempenho e aplicações de micropagamentos posicionam-no como um elemento fundamental na paisagem tecnológica da blockchain e como um potencial rumo principal para a evolução futura dos sistemas de registo distribuído.
Partilhar