O que é o GhostDAG da Kaspa e como funciona?

O que é o GhostDAG?
GhostDAG (Greedy Heaviest Observed SubTree Directed Acyclic Graph) é um mecanismo de consenso usado pela Kaspa. O GhostDAG foi desenvolvido como uma extensão do modelo de consenso clássico de Proof-of-Work do Bitcoin, que foi desenvolvido por Satoshi Nakamoto. A maior diferença: o GhostDAG é aplicado a um Directed Acyclic Graph (DAG) em vez de uma blockchain linear. Um Directed Acyclic Graph (DAG) é uma estrutura de dados na qual os blocos não são colocados numa única cadeia reta, mas como uma rede de nós com várias ligações, em que cada novo bloco pode referenciar vários blocos anteriores sem que surjam ligações cíclicas (recorrentes). Se isto acontecesse, um bloco acabaria por referenciar indiretamente a si próprio. Isto tornaria pouco claro em que ordem as transações ocorreram e a rede deixaria de conseguir manter um histórico fiável.
Em blockchains tradicionais, apenas um bloco por unidade de tempo é aceite (também chamado de block time), enquanto os blocos concorrentes são rejeitados como “orphans”. O GhostDAG quebra este modelo ao permitir blocos paralelos e ao integrá-los numa única estrutura de dados partilhada (blockDAG). Isto permite à Kaspa alcançar velocidades de transação mais elevadas com menos poder computacional e, portanto, energia. Além disso, a descentralização mantém-se e até reforça, porque os miners já não competem entre si para poder validar um bloco, mas praticamente todos os blocos produzidos contribuem para a rede, o que baixa a barreira de entrada e torna o poder menos concentrado em grandes mining pools.
Desta forma, o GhostDAG constitui uma interpretação claramente diferente de como o consenso Proof-of-Work pode ser aplicado.
Pontos principais
- O GhostDAG é o protocolo de consenso atual da rede Kaspa e constitui a base do funcionamento.
- Usa um parâmetro k fixo para alcançar consenso dentro da rede.
- O protocolo torna possível processar vários blocos em paralelo dentro duma estrutura BlockDAG.
- Isto permite à rede processar transações de forma mais rápida e eficiente do que blockchains tradicionais.
- O GhostDAG mantém um modelo de segurança robusto, em que a rede continua segura desde que um atacante controle menos de 50% da hashpower.
- É usado diariamente na prática e já se provou como uma solução estável e escalável.
Como funciona o GhostDAG?
O GhostDAG funciona com base numa estrutura blockDAG, em que os blocos podem ter vários ‘pais’ (blocos anteriores) e podem ser adicionados à rede ao mesmo tempo. Em vez duma cadeia reta de blocos, forma-se uma rede de blocos interligados. Isto torna possível lidar de forma muito mais eficiente com blocos encontrados em simultâneo.
O facto de os blocos poderem ter vários blocos anteriores é, de imediato, a grande diferença face a blockchains tradicionais como a Bitcoin, a Ethereum e a Solana. Aqui, existe sempre apenas uma ordem e só pode ser adicionado um bloco de cada vez à blockchain.
Exemplo: quando dois miners encontram um bloco ao mesmo tempo, surge um conflito e, no final, um dos dois blocos é rejeitado (um orphan block).
No GhostDAG, vários blocos podem existir ao mesmo tempo, novos blocos podem referenciar vários blocos anteriores e os blocos não são rejeitados. Isto cria um sistema eficiente em que se aproveita ao máximo o poder computacional que é utilizado pelos miners.
Em resumo: um blockDAG e uma blockchain são ambos tipos de livro-razão distribuído, mas diferem na estrutura e no processamento: uma blockchain funciona como uma cadeia linear de blocos que são adicionados um a um, enquanto um blockDAG usa uma estrutura em rede na qual vários blocos podem ser adicionados ao mesmo tempo e em paralelo.
Algoritmo Greedy Heaviest Subtree
A pergunta lógica é: como é que a rede determina qual bloco vem ‘antes’ quando vários blocos são criados ao mesmo tempo?
Isto é regulado pelo algoritmo Greedy Heaviest Subtree (GhostDAG). Este algoritmo, que está integrado no código da Kaspa, ajuda os nodes a impor ordem a todos os blocos recebidos.
Na prática, funciona assim: os nodes recolhem todos os blocos que recebem e depois analisam qual grupo de blocos, em conjunto, custou mais poder computacional (hashpower) para ser criado. Cada bloco contém uma certa quantidade de trabalho (proof-of-work) e, ao somar este trabalho, obtém-se um total. Quanto mais alto for esse total, mais difícil é reproduzir ou atacar essa estrutura e, por isso, mais fiável esta é considerada.
Com base nisso, cada node determina por si próprio qual é a melhor ordem de blocos. Como todos os nodes seguem as mesmas regras, acabam por chegar a praticamente a mesma ordem. Assim, forma-se consenso na rede.
Conjunto blue vs conjunto red
Outro componente importante do GhostDAG é que os blocos são classificados em duas categorias, nomeadamente blue blocks e red blocks:
- Blue blocks: são blocos que se enquadram bem na estrutura principal da rede e estão suficientemente ligados a outros blocos.
- Red blocks: são blocos que se encaixam menos bem, por exemplo, por se desviarem demasiado ou terem poucas ligações.
Ao contrário das blockchains tradicionais, os red blocks não são rejeitados como orphans, mas continuam a fazer parte da rede e desempenham um papel menor na ordem final das transações.
Esta classificação ajuda a rede a determinar rapidamente quais blocos são ‘suficientemente fiáveis’ para receber prioridade, sem que se perca informação valiosa.
A whitepaper do GhostDAG
A whitepaper do GhostDAG constitui a base teórica do mecanismo de consenso usado na Kaspa e tem como objetivo enfrentar o trilema da blockchain: o desafio de alcançar simultaneamente escalabilidade, segurança e descentralização.
Baseia-se no protocolo PHANTOM anterior, uma proposta académica que foi a primeira a tentar ordenar um blockDAG de forma segura. Embora o PHANTOM fosse forte a nível teórico, na prática revelou-se difícil de implementar de forma eficiente. O GhostDAG foi desenvolvido como uma variante eficiente e prática, que mantém os mesmos princípios mas é mais escalável numa rede real.
Alcançar consenso
Uma das contribuições mais importantes da whitepaper é expandir o modelo clássico de consenso de Nakamoto, ao alcançar consenso com a ajuda duma estrutura DAG em vez duma única cadeia linear de blocos. Isto significa que podem ser produzidos vários blocos ao mesmo tempo, sem que o poder computacional seja desperdiçado, em parte através da utilização dos chamados blue e red blocks. As blockchains tradicionais só conseguem processar um bloco de cada vez, pelo que outros blocos encontrados são rejeitados como orphan blocks.
Manter a fiabilidade dos blocos
Um elemento central no GhostDAG é o chamado parâmetro k. Este parâmetro determina quantos blocos simultâneos ainda são considerados ‘seguros’ e fiáveis dentro da rede. Por outras palavras: indica quanta divergência (devido a latência de rede ou produção de blocos em simultâneo) ainda é aceitável sem que a segurança fique em risco. A escolha de k depende de fatores como a latência da rede e a velocidade de produção de blocos, e desempenha um papel importante no equilíbrio entre velocidade e segurança.
Segurança
Tal como no Bitcoin, o modelo de segurança do GhostDAG continua baseado na suposição de que um atacante controla menos de 50% do poder computacional total (hashpower). Enquanto esta condição se mantiver, é extremamente difícil para um atacante manipular a ordem das transações ou reescrever a rede.
Melhoria de throughput
Um objetivo importante do GhostDAG é aumentar o throughput (o número de blocos e transações que podem ser processados por segundo). Como os blocos já não competem entre si e são combinados, a rede pode produzir blocos muito mais rapidamente.
Ao contrário das blockchains tradicionais, uma frequência de blocos mais alta não leva automaticamente a mais forks ou a blocos desperdiçados. Assim, o GhostDAG pode atingir uma escalabilidade significativamente mais elevada sem comprometer a segurança.
Diferença entre GhostDAG e DAGKnight
O DAGKnight pode ser visto como a próxima evolução do GhostDAG. Enquanto o GhostDAG usa um parâmetro k fixo (baseado em suposições como a latência da rede), o DAGKnight foi concebido sem um parâmetro fixo e adapta-se dinamicamente às condições atuais da rede.
Isto torna o DAGKnight mais flexível e mais resistente a flutuações na rede, como atrasos ou picos de atividade. Ambos os protocolos mantêm o mesmo modelo de segurança, em que a rede se mantém segura desde que um atacante controle menos de 50% da hashpower total.
Neste momento, o GhostDAG é a base ativa da rede Kaspa e é usado diariamente para processar transações e alcançar consenso. O DAGKnight ainda está em desenvolvimento e é visto como uma futura atualização do protocolo.
Em suma: o GhostDAG é o motor atual da Kaspa, enquanto o DAGKnight está a ser desenvolvido como um sucessor mais flexível e escalável que se adapta dinamicamente às condições da rede.
Que papel desempenha o GhostDAG dentro da Kaspa?
1. Infraestrutura central:
O GhostDAG constitui a base da rede Kaspa e determina como tudo funciona. Garante que as transações são colocadas na ordem correta, valida novos blocos e garante que todos os nodes na rede concordam entre si (consenso).
2. Alta velocidade e escalabilidade:
Graças ao GhostDAG, vários blocos podem ser processados ao mesmo tempo, o que permite à Kaspa produzir vários blocos por segundo. Isto leva a uma alta velocidade de processamento (throughput) sem que a rede se centralize.
3. Sem mineração desperdiçada:
Ao contrário das blockchains tradicionais, os blocos não são deitados fora quando são encontrados ao mesmo tempo. Praticamente todos os blocos são usados dentro do blockDAG, o que permite usar de forma mais eficiente o poder computacional (hashpower) empregado.
4. Manutenção dos princípios de Proof-of-Work:
O GhostDAG garante que a Kaspa mantém as propriedades mais importantes do Proof-of-Work, como a descentralização, a segurança baseada em hashpower e uma rede aberta (permissionless). Ao mesmo tempo, acrescenta a escalabilidade duma estrutura DAG.
Considerações finais
O GhostDAG constitui o núcleo da rede Kaspa e mostra como uma estrutura BlockDAG pode funcionar na prática de forma eficiente e segura. Ao usar um parâmetro k fixo, o protocolo consegue encontrar um bom equilíbrio entre velocidade, segurança e consenso, mesmo numa rede com muitos blocos simultâneos.
Embora estejam a surgir novos desenvolvimentos como o DAGKnight, o GhostDAG já prova atualmente que é uma solução robusta e escalável para o processamento de transações. Assim, constitui um passo importante na evolução das redes distribuídas e estabelece a base para mais inovações dentro do ecossistema da Kaspa.