O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?

Quando pensamos em criptomoedas, geralmente nos vem à mente os termos “blockchain” ou “tecnologia de registro distribuído”. Desde o lançamento do Bitcoin, centenas de outras criptomoedas foram criadas, a maioria delas utilizando uma arquitetura de rede similar. Suas estruturas de dados permitem que os usuários transfiram valor ou interajam com aplicativos descentralizados.

Em uma blockchain, um novo bloco é periodicamente adicionado a uma cadeia crescente de blocos. Cada bloco está conectado ao anterior por meio de uma espécie de link criptográfico, conhecido como hash. Dentro de cada bloco estão transações recentes que foram transmitidas pelos usuários.

No entanto, geralmente existe um período de espera entre o momento em que uma transação é transmitida e sua inclusão em um bloco. É como esperar por um trem em uma estação. Dependendo do tamanho dos vagões (tamanho do bloco) e do número de pessoas esperando (transações pendentes), você pode não conseguir pegar o próximo trem, ou até mesmo o seguinte. Você pode esperar de segundos a horas para que a transação seja confirmada.

Para muitos, esse é um bom compromisso. Afinal, isso oferece um alto grau de segurança sem depender de um coordenador centralizado. No entanto, há aqueles que acreditam que a tecnologia blockchain tem uma data de validade. Os críticos acreditam que, a longo prazo, os problemas de escalabilidade enfrentados pela tecnologia blockchain impedirão sua adoção em massa.

Alguns acreditam que o futuro das redes de pagamento de criptomoedas está em uma arquitetura completamente diferente: os grafos acíclicos direcionados (ou DAGs).

O que é um DAG?

Um DAG é um tipo diferente de estrutura de dados – pense nele como um banco de dados que conecta diferentes peças de informação. “Grafo acíclico direcionado” é um termo complexo, então vamos começar desmembrando-o.

O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?

Conceitualmente, os DAGs se parecem com a imagem acima. Eles são compostos por vértices (as esferas) e arestas (as linhas que os conectam). Eles são “direcionados” porque seguem em uma direção específica (como indicado pelas setas). São “acíclicos” porque os vértices não se retroalimentam – se você começa em um ponto e segue o grafo, não pode retornar ao mesmo ponto. Isso ficará mais claro em breve.

Essas estruturas de dados são geralmente usadas para modelar informações. Você pode usar um DAG em campos científicos ou médicos para observar a relação entre variáveis e determinar como elas se afetam mutuamente. Por exemplo, você pode considerar fatores como nutrição, ciclos de sono e sintomas físicos, para estabelecer as conexões entre eles e determinar como eles afetam um paciente.

Para nossos propósitos, estamos mais interessados em como os DAGs podem ajudar a alcançar o consenso em uma rede de criptomoedas distribuída.

Como funciona um DAG?

Em uma criptomoeda baseada em DAG, cada vértice na estrutura representa uma transação. Aqui não há noção de blocos, nem é necessário o processo de mineração para estender o banco de dados. Em vez de agrupar transações em blocos, cada transação é construída em cima de outra. No entanto, ainda há uma pequena operação de Prova de Trabalho que é realizada quando um nó envia uma transação. Isso garante que a rede não esteja sendo inundada de spam e também valida as transações anteriores.

Para que uma nova transação seja adicionada, ela deve ser construída com base em transações anteriores. Suponha que Alice crie uma nova transação. Para que ela seja reconhecida, essa transação deve fazer referência a transações anteriores. É um pouco semelhante à forma como um bloco no Bitcoin faz referência ao bloco anterior, mas aqui são referenciadas várias transações.

Em alguns sistemas, um algoritmo selecionará quais transações (ou “dicas”) uma nova transação deve construir. As dicas mais propensas a serem selecionadas são aquelas que possuem um peso acumulado maior – uma medida de quantas confirmações o caminho até a dica possui.

As transações nas quais Alice construirá sua transação estão “não confirmadas”. Mas uma vez que Alice faça referência a elas, elas se tornam confirmadas. A transação de Alice agora está não confirmada, então outra pessoa deve construir em cima dela para que seja aceita.

Os usuários têm mais probabilidade de confirmar transações com um peso “maior” para que o sistema continue crescendo. Caso contrário, nada impediria os usuários de continuarem construindo em transações antigas.

Com as blockchains, a proteção contra gastos duplos é relativamente fácil. Os mesmos fundos não podem ser gastos duas vezes em um bloco – os nós podem facilmente detectar qualquer tentativa e rejeitar qualquer bloco que contenha transações conflitantes. Como a produção de blocos pelos mineradores é muito cara, eles são incentivados a agir de forma justa.

Os DAGs também possuem um mecanismo para evitar gastos duplos. É algo semelhante, mas sem a participação dos mineradores. Quando um nó confirma transações anteriores, ele avalia todo o caminho de volta até a primeira transação do DAG para garantir que o remetente tenha um saldo suficiente. Pode haver vários caminhos, mas apenas um precisa ser verificado.

O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?

Se os usuários construírem em um caminho inválido, eles correm o risco de ter sua própria transação ignorada. Sua transação pode ser legítima, mas, como a anterior não era, ninguém vai querer estender aquele caminho em particular.

Isso pode parecer contraintuitivo no início – não poderia haver situações em que existem várias ramificações que não estão cientes umas das outras? E as pessoas não poderiam gastar os mesmos fundos nessas diferentes ramificações?

O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?

Essa é realmente uma possibilidade, mas ela é resolvida com um algoritmo de seleção que favorece as dicas com um peso acumulado mais alto. Isso significa que, ao longo do tempo, você acabará com uma ramificação muito mais forte do que as demais. As mais fracas serão abandonadas, e a rede continuará construindo na mais pesada.

Assim como nas blockchains, não existe uma finalidade absoluta – você nunca pode ter 100% de certeza de que uma transação não será revertida. É extremamente improvável, mas teoricamente é possível “desfazer” um bloco do Bitcoin ou Ethereum, revertendo todas as transações dentro dele. Quanto mais blocos são adicionados após aquele em que sua transação está, maior a confiança que você pode ter nela. É por isso que é recomendado esperar seis confirmações antes de gastar fundos.

Em um DAG como o Tangle do IOTA, existe a ideia de “confiança de confirmação”. O algoritmo de seleção é executado 100 vezes, e você conta quantas vezes sua transação foi aprovada diretamente ou indiretamente nas dicas selecionadas. Quanto maior a porcentagem, mais confiança você pode ter de que sua transação permanecerá “resolvida”.

Isso pode parecer que leva a uma má experiência do usuário. Mas não é o caso. Se Alice enviar 10 MagicDAGTokens para Bob, ela não precisa se preocupar em selecionar as dicas corretas do grafo. Internamente, sua carteira pode fazer o seguinte:

  • Selecionar dicas pesadas (lembre-se, são aquelas com mais confirmações acumuladas).
  • Seguir o caminho de volta pelas transações anteriores para garantir que as dicas tenham um saldo suficiente para gastar.
  • Uma vez satisfeita, ela adiciona sua transação ao DAG, confirmando as transações nas quais ela se baseia.

Para Alice, isso parecerá apenas o fluxo de trabalho habitual de uma criptomoeda. Ela insere o endereço de Bob e a quantidade que deseja gastar, e depois pressiona “enviar”. A lista acima é a Prova de Trabalho que cada participante executa ao criar uma transação.

Prós e contras dos grafos acíclicos direcionados

Prós dos DAGs

Velocidade

Sem restrições de tempo de bloco, qualquer pessoa pode transmitir suas transações e tê-las processadas a qualquer momento. Não há limite para o número de transações que os usuários podem enviar, desde que confirmem as anteriores conforme o fazem.

Ausência de mineração

Os DAGs não utilizam algoritmos de consenso baseados em Prova de Trabalho da maneira que estamos acostumados. Seu impacto ambiental é, portanto, uma fração daquele das criptomoedas que dependem da mineração para garantir sua rede blockchain.

Ausência de taxas de transação

Como não há mineradores, os usuários não precisam pagar taxas para transmitir suas transações. No entanto, algumas redes podem exigir o pagamento de uma pequena taxa a certos tipos de nós. Taxas baixas (ou melhor, nenhuma taxa) são atraentes para microtransações, pois seu propósito seria prejudicado com altas taxas de rede.

Ausência de problemas de escalabilidade

Sem restrições de tempo de bloco, os DAGs podem processar muito mais transações por segundo do que as redes blockchain tradicionais. Muitos defensores acreditam que isso os tornará valiosos em casos de uso da Internet das Coisas (IoT), onde todos os tipos de máquinas interagirão entre si.

Contras dos DAGs

Não totalmente descentralizados

Protocolos que dependem de DAGs possuem diversos elementos de centralização. Para alguns, isso é considerado uma solução de curto prazo para iniciar a rede, mas resta saber se os DAGs podem prosperar sem a intervenção de terceiros. Caso contrário, eles se tornam vulneráveis a vetores de ataque que eventualmente podem prejudicar suas redes.

Não testados em escala

Embora as criptomoedas baseadas em DAG existam há alguns anos, elas ainda têm um longo caminho a percorrer antes de serem amplamente utilizadas. Como resultado, é difícil prever quais incentivos os usuários podem ter para explorar o sistema no futuro.

Considerações finais

Os Grafos Acíclicos Direcionados são certamente uma tecnologia interessante para a construção de redes de criptomoedas. Até agora, existem relativamente poucos projetos que utilizam essa estrutura de dados, e eles ainda não evoluíram completamente.

Dito isso, se eles conseguirem cumprir seu potencial, poderão alimentar ecossistemas com grande escalabilidade. A tecnologia de DAG possui uma infinidade de casos de uso em áreas que exigem alto rendimento e ausência de taxas, como na Internet das Coisas (IoT) e microtransações.

O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?
O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?
O que é um Grafo Acíclico Direcionado (DAG) em Criptomoedas?
Registro Rápido

Negociação de moedas, metais, petróleo, criptomoedas, conta demo com $10.000.

92%
Pontuação de Confiança

icon Teste Agora! icon Teste Agora!
Pontuação de Confiança

FBS

Exnova

PocketOption

Expertoption

Quotex

XM

AvaTrade