O que é o protocolo Dandelion?

Bitcoin e outras criptomoedas empregam privacidade em Ambas o nível do blockchain e a camada de rede. Blockchains públicos são registros permanentes de transações digitais, portanto, as implementações de privacidade de blockchain concentram-se em ocultar os dados da transação e tornar anônima a identidade de remetentes e destinatários.

As criptomoedas com foco na privacidade, como Monero e Zcoin, incorporam recursos de anonimato de nível de blockchain, como CTs de anel e provas de conhecimento zero para garantir que as transações não possam ser rastreadas. No entanto, a comunicação de rede P2P / overlay também desempenha um papel vital no anonimato das interações em uma rede blockchain. Tanto o Monero quanto o Zcoin integram recursos de privacidade da camada de rede, como Tor e I2P, mas esses recursos também vêm com o desenvolvimento prolongado e outras desvantagens.

O Protocolo dente-de-leão é uma solução de anonimato da camada de rede que foi proposta originalmente em 2017 para ajudar a melhorar a privacidade da rede P2P do Bitcoin. Sua proposta original foi posteriormente descoberta para conter vários falhas, panes que pode levar à sua desanonimização ao longo do tempo devido a algumas suposições idealistas de potenciais adversários.

O que é o protocolo Dandelion?

Eventualmente, uma versão melhorada do Protocolo Dandelion foi proposta em maio no início deste ano, chamada Dente de leão++. Dandelion ++ aborda as preocupações com o protocolo original e já foi implementado pela equipe de pesquisa com uma resposta positiva das equipes de desenvolvimento do Bitcoin. Dandelion ++ parece prestes a ser incluído em um próximo lançamento do Bitcoin Core.

O que é dente de leão++?

Dandelion ++ é uma solução de camada de rede leve e direta com anonimato formalmente garantido que pode ser facilmente implementado com criptomoedas existentes. Ele melhora explicitamente as suposições idealistas da proposta original da Dandelion e difere da maioria dos protocolos de anonimato de comunicação de transmissão em sua abordagem de objetivos de uso e métricas de análise.

Para entender melhor como Dandelion ++ funciona, é essencial focar em como as transações são transmitidas em Bitcoin e como o protocolo Dandelion original funcionava. No Bitcoin, quando um usuário transmite uma transação de um nó, ela é propagada para os nós conectados a esse nó específico conhecido como seus pares. A mensagem de transação é então propagada em uma reação em cadeia onde cada nó espalha a mensagem para os nós aos quais eles estão conectados. Isso é conhecido como protocolo de fofoca do Bitcoin e é como as transações podem alcançar a maioria dos nós na rede muito rapidamente.

Bitcoin agora implementa uma forma de transmissão conhecida como difusão, onde cada nó espalha transações com atrasos exponenciais e independentes para seus vizinhos para mitigar a desanonimização do endereço IP de um usuário. Embora eficaz, a difusão tem recentemente foi comprovado em vários estudos que não oferece proteção adequada ao anonimato.

A origem de uma mensagem de transação e seu endereço IP (que não está incluído em uma mensagem de transação Bitcoin) podem ser mapeados por observadores terceirizados se eles controlar nós suficientes ou use um supernó conectado a um número significativo de nós. Eles podem mapear efetivamente o endereço de origem, observando quais nós veem a transação primeiro. O dente-de-leão++ papel identifica explicitamente como um estudo que usou um supernó registrou o tráfego retransmitido de todos os nós P2P e observou os padrões de propagação da transação ao longo do tempo para eventualmente deduzir o endereço IP de origem. Ao vincular o endereço IP ao pseudônimo do remetente, um terceiro pode desanonimizar os usuários e vincular outras transações, mesmo se uma nova chave pública for usada para cada transação.

O dente-de-leão foi inicialmente proposto para mitigar essas vulnerabilidades, mas contou com garantias teóricas que não se sustentaram na prática. A proposta original da Dandelion fazia 3 suposições idealizadas:

  • Todos os nós obedecem ao protocolo
  • Cada nó gera precisamente uma transação
  • Todos os nós Bitcoin executam Dandelion

Essas suposições claramente não funcionaram na prática e é por isso que Dandelion ++ procurou abordá-las. O protocolo Dandelion original funciona em 2 fases:

  1. Stem Phase
  2. Fase Fluff

A fase de tronco é a fase anônima em que o protocolo é projetado para reduzir a possibilidade de mapeamento de volta para o endereço IP do nó original. Na fase de tronco, em vez de um nó transmitindo uma transação para todos os seus pares conectados, ele retransmite a mensagem da transação por meio de um gráfico de privacidade para um único par aleatório com base em um algoritmo. Posteriormente, esse nó apenas transmite a mensagem de transação para outro único par, e o padrão continua até que eventualmente (e aleatoriamente) um dos nós transmita a mensagem no formato típico de difusão para o resto da rede.

É aqui que começa a fase de fluff. Uma vez que um único nó transmite a mensagem usando o método de difusão, a mensagem de transação é propagada para a maioria dos nós da rede rapidamente. No entanto, torna-se muito mais difícil rastrear de volta ao nó original, uma vez que a mensagem de transação foi transferida para muitos nós individuais por meio de um gráfico de privacidade antes de ser propagada de uma maneira que permitiria a um observador mapeá-la para um único nó. Em vez disso, um observador só poderia mapear a propagação das transações de volta para os vários nós onde a mensagem foi transferida na fase de tronco, confundindo assim a identidade real do remetente. Na verdade, isso é abstratamente semelhante a como uma assinatura de anel ofusca o assinante real de uma transação.

Crédito da imagem – Apresentação de Giulia Fanti em Lisboa

O zcoin blog fornece um excelente exemplo de como o protocolo Dandelion funciona usando a fofoca típica do ensino médio:

* FASE DE TRONCO *

  • Kathy: “Pssst, eu tenho uma queda enorme por Nuwa. Por favor, não conte a ninguém ”
  • George: “Meu Deus, você sabia o que Kathy me disse? Ela tem uma paixão enorme por Nuwa. Eu só disse a você, por favor, não conte a ninguém ”
  • Alice: “Betty, você não vai acreditar no que o melhor amigo de Kathy, George, acabou de me dizer, Kathy está se apaixonando por Nuwa! Você é meu melhor amigo, então eu apenas disse a você, por favor, não diga a ninguém que está bem! “

* BEGIN FLUFF PHASE *

  • Blabbermouth Betty: “Uau, notícias quentes… Tenho boas fontes de que Kathy tem uma grande queda por Nuwa… Por favor, digam a todos que isso é tão emocionante!”

Os principais problemas com o protocolo Dandelion original derivam de sua subestimação de tipos específicos de adversários devido a suposições de seu conhecimento limitado. Dandelion ++ concentra-se particularmente em fazer mudanças sutis nas escolhas de implementação do Dandelion, como a topologia do gráfico e mecanismos para encaminhar mensagens.

Como resultado, essas pequenas mudanças no algoritmo aumentam exponencialmente o espaço de estado do problema para análise de anonimato. Dandelion ++ depende do aumento da quantidade de informações que os adversários devem aprender para desanonimizar os usuários.

O Dandelion ++ difere notavelmente do Dandelion em sua fase de tronco, onde ele passa as transações por caminhos entrelaçados conhecidos como cabos antes de difundir a mensagem da transação para a rede. Os cabos podem ser fragmentados, mas sua intuição em selecionar um nó para se propagar ainda está confinada à sua vizinhança local. Esta é uma consideração importante ao comparar soluções de anonimato no nível da rede como o Tor, que é um protocolo de roteamento cebola onde os clientes precisam de informações de rede globais e atuais para determinar os caminhos das transações.

Crédito da imagem – Dandelion ++ Documento acadêmico

Tanto Dandelion quanto Dandelion ++ procedem em ciclos assíncronos. Cada nó avança quando seu relógio interno atinge um certo limite. Para cada período, Dandelion ++ funciona em 4 componentes primários com pequenas otimizações:

  1. Gráfico de anonimato
  2. Encaminhamento de transação (próprio)
  3. Encaminhamento de transação (retransmissão)
  4. Mecanismo à prova de falhas

O gráfico de anonimato usa um gráfico 4-regular aleatório em vez de um gráfico linear para a fase de anonimato. A escolha de relés Dandelion ++ por nós é independente de seus vizinhos de saída suportarem Dandelion++.

Transaction Forwarding (own) é quando cada vez que um nó gera uma transação própria, ele encaminha a transação ao longo da mesma borda de saída no gráfico 4-regular. Isso difere de uma das suposições problemáticas em Dandelion, onde os nós são assumidos para gerar apenas uma transação.

Transaction Forwarding (relay) é o momento de probabilidade na fase de tronco em que um nó recebe uma transação de tronco e escolhe retransmitir a transação ou difundi-la para a rede. A escolha de difundir as transações para a rede é pseudo-aleatório. Além disso, um nó é um difusor ou um nó de retransmissão para todas as transações retransmitidas.

Mecanismo à prova de falhas é onde, para cada transação de fase de tronco, cada nó rastreia se ela é vista novamente como uma transação de fase fluff. Caso contrário, o nó difunde a transação.

Os pequenos ajustes no algoritmo nesses estágios tornam drasticamente mais difícil mapear endereços IP observando a propagação de mensagens de transação. O artigo Dandelion ++ prossegue identificando ataques específicos que poderiam ser usados ​​contra o protocolo Dandelion original, incluindo ataques de aprendizagem de gráfico, ataques de interseção, ataques de construção de gráfico e ataques de buraco negro. Com cada vetor de ataque, eles demonstram como Dandelion ++ os mitiga com análises teóricas e simulações.

Dandelion ++ não aumenta significativamente a latência da rede e sua viabilidade prática foi demonstrada na rede principal do Bitcoin. Ele fornece uma ferramenta de anonimato de camada de rede leve e eficaz para reduzir a possibilidade de ataques de mapeamento para desanonimizar usuários. Apesar de suas vantagens, Dandelion ++ não protege explicitamente contra adversários de nível de ISP ou AS, que podem usar ataques de roteamento para anonimizar os usuários.

Comparando Dandelion ++ e Tor

Dandelion ++ tem algumas vantagens notáveis ​​sobre outras implementações de anonimato de rede, como Tor. Tor é a camada de sobreposição de rede mais proeminente com foco na privacidade e usa o roteamento cebola para ocultar a localização geográfica dos usuários e endereços IP.

A integração do Tor no nível da pilha de rede dos sistemas de criptomoeda é extremamente desafiadora. Monero é um excelente exemplo disso, pois levou mais de quatro anos para implementar seu I2P semelhante ao Tor Kovri projeto em sua rede e ainda é um trabalho em andamento. Muitas redes de criptomoedas não têm tempo nem conhecimento técnico para integrar este tipo de funcionalidade.

O roteamento de suas transações por meio do Tor também não é particularmente viável para os usuários comuns de Bitcoin que não estão cientes das deficiências de privacidade da rede ou não têm experiência para rotear transações através do Tor adequadamente. Além disso, o Tor pode ser lento devido à largura de banda limitada em comparação com o dente-de-leão++.

O mesmo estude que identificou algumas preocupações de desanonimização da difusão de difusão em Bitcoin também destaca ataques a nós onde eles acabam rejeitando ou colocando na lista negra as conexões Tor. Isso pode levar à anonimização de transações e mapeamento de endereços IP de usuários também.

Conclusão

Dandelion ++ é uma melhoria útil em relação ao protocolo Dandelion original. Sua eventual integração em um próximo lançamento do Bitcoin Core parece provável e deve oferecer melhorias significativas na privacidade da rede P2P do Bitcoin. Os vetores de ataque de criptomoedas continuam a evoluir, assim como as soluções para eles. Dandelion ++ representa mais um passo em frente na proteção do usuário privacidade em Bitcoin.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me