Descoberta e panorama
O Tor Project publicou um redesign criptográfico da camada de encriptação usada entre relays, substituindo o mecanismo denominado "tor1" por Counter Galois Onion (CGO). A mudança responde a vulnerabilidades de longa data do desenho anterior, identificadas por pesquisadores e pela própria equipe do Tor.
O que mudou agora
CGO altera a construção de cifras utilizadas nas células onion: adota uma construção de wide-block e encadeamento de tags de autenticação entre células, fazendo com que qualquer modificação em uma célula torne toda a mensagem irrecuperável. O projeto também introduz um mecanismo de atualização de chaves (Update) que transforma chaves de forma irreversível após cada célula, oferecendo forward secrecy imediata.
Abordagem técnica
Segundo a documentação disponibilizada pelo Tor Project e pelos autores do desenho (Jean Paul Degabriele, Alessandro Melloni, Jean‑Pierre Münch e Martijn Stam), CGO implementa um Rugged Pseudorandom Permutation (RPRP) baseado em UIV+ que permite resistência a tagging em uma única passagem, reduzindo o custo computacional comparado a Strong Pseudorandom Permutations de duas passagens.
Vulnerabilidades do tor1 tratadas
- Tagging attacks: tor1 usava AES‑128‑CTR sem autenticação hop‑by‑hop, o que criava ciphertexts maleáveis que podem ser modificados por um adversário ativo.
- Canal interno ("Internal Covert Channel"): controle de pontos extremos do circuito permitia injetar identificadores que permaneciam ao longo do caminho, possibilitando deanonymization antes do tráfego de aplicação.
- Forward secrecy limitada: chaves persistiam durante a vida do circuito; chaves comprometidas permitem descriptografar tráfego histórico.
- Digest de autenticação curto e uso de SHA‑1: tor1 empregava um digest de 4 bytes e SHA‑1, pontos já reconhecidos como fracos.
Impacto e alcance
A adoção do CGO afeta a infraestrutura de relays do Tor e os clientes que estabelecem circuitos. O Tor Project já implementou CGO em Arti (implementação em Rust) e em C para compatibilidade com relays existentes, implicando mudanças de implementação e refatoração de componentes que assumiam detalhes da estrutura de células antiga.
Limites das informações
CGO é um desenho relativamente novo que ainda passa por escrutínio acadêmico e revisão prática. As publicações do Tor Project afirmam que as fraquezas conhecidas do tor1 são mais graves que quaisquer problemas ainda não descobertos em CGO, mas reconhecem que acompanhamento contínuo é necessário. As fontes não detalham métricas de performance em escala de rede real nem cronogramas completos de habilitação por padrão em todos os clientes/relays.
Repercussão e próximos passos
As etapas seguintes incluem habilitar CGO por padrão em Arti, suportar negociação de onion services com o novo esquema e otimizar o desempenho para CPUs modernas. A transição exige coordenação entre implementações e operadores de rede para evitar incompatibilidades.
O que operadores e equipes de segurança devem considerar
- Monitorar anúncios oficiais do Tor Project para cronogramas de rollout e recomendações de interoperabilidade.
- Testar cargas e latência em implementações que já suportam CGO antes de forçar migrações em produção.
- Ficar atentos a publicações acadêmicas que revisem formalmente o desenho RPRP/UIV+ empregado pelo CGO.
Em suma, CGO representa uma mudança arquitetural significativa na segurança dos circuitos Tor, com foco em resistência a manipulação ativa e em forward secrecy; porém, sua adoção requer acompanhamento técnico e avaliação contínua pela comunidade.