A criptografia esconde o que você disse. Isto esconde que você falou.
A criptografia mantém o conteúdo de uma mensagem privado. Ela não esconde que a mensagem aconteceu. Quem observa a rede continua vendo quem fala com quem, quando, e quantos kilobytes (KB) se moveram — o que, em contextos sensíveis, pode importar tanto quanto as palavras. O AEGIS mantém o tráfego entre os membros de um grupo fechado fluindo a taxa constante, havendo ou não algo para enviar, de modo que a temporização e o volume não carregam sinal nenhum.
“Nada está pronto até uma simulação de ataque confirmar.”
A intuição sobre análise de tráfego falhou repetidas vezes durante o desenvolvimento. Só a bancada de simulação se mostrou confiável, então ela virou o controle. A bancada em Python em
sim/ é o livro-razão de evidências por trás de cada afirmação quantitativa da especificação — não um acréscimo tardio que valida um projeto já entregue.
O que isto é, em um minuto
Quem consegue observar a rede não precisa quebrar a criptografia. Vê que um ponto enviou 14 KB às 09:41:03 e outro recebeu 14 KB três segundos depois, e que a mesma coisa acontece duas vezes por dia durante onze semanas. Repetido o bastante, isso é um mapa de quem trabalha com quem, desenhado sem ler uma única mensagem.
O AEGIS faz o fio parecer igual o tempo todo. O tráfego sai a taxa constante, havendo ou não algo para enviar, e o que chega é enchido até um tamanho fixo, então não há rajada em uma ponta para casar com uma rajada na outra. Isso custa banda e acrescenta atraso; a demonstração abaixo mostra a proteção e o preço lado a lado.
Redações e quem protege uma fonte, em que a hora e o tamanho de um contato são o que expõe a pessoa. Bancos, seguradoras e entidades setoriais que competem entre si e ainda assim precisam trocar dados. Organizações que compartilham alertas sobre ataques, em que ser visto compartilhando já pode ser a parte sensível.
Os metadados são a parte que identifica você
Um adversário passivo global não consegue ler as suas mensagens. Nem precisa. Ele observa todos os enlaces ao mesmo tempo e correlaciona: este ponto transmitiu 14 KB às 09:41:03, aquele ponto recebeu 14 KB às 09:41:06, e o padrão se repete duas vezes por dia durante onze semanas.
Volume e temporização bastam para reconstruir o grafo de relacionamentos de uma organização inteira sem quebrar uma única cifra. Para um consórcio — bancos liquidando entre si, hospitais compartilhando prontuários, redações com fontes — o grafo é a informação sensível.
O AEGIS transforma o fio em uma parede plana e imutável. Taxa constante independentemente do que está acontecendo por baixo, então volume e temporização não carregam sinal nenhum. A demonstração abaixo deixa você rodar o ataque contra as duas configurações e ver a diferença.
Mixnet moldada
Dados pequenos e em rajadas, mais todo o tráfego de controle. Pacotes Sphinx emitidos a taxa constante, com enchimento de teto rígido no receptor para que o volume de entrada de um receptor também fique fixo.
Plano de volume
Transferência de arquivos grandes com nível de segurança ajustável — cru, em baldes ou em lotes uniformes. Você escolhe onde fica na curva de custo; nada sobre o preço é escondido.
Seja o adversário passivo global
Cinco remetentes falam, cada um, com exatamente um de cinco destinatários. Você vê apenas o volume de tráfego em cada enlace — nunca o conteúdo, nunca o roteamento. Correlacione as séries e tente recuperar o pareamento. Depois ligue a defesa de taxa constante e tente de novo.
bancada de análise de tráfego
Conclusão do adversário
Custo da defesa
O acaso é 20% — um par em cinco recuperado no chute. Qualquer coisa significativamente acima disso é o adversário vencendo. Os números de custo são a outra metade honesta: moldar a taxa constante não sai de graça, e o AEGIS não finge que sai.
Oito fases, cada uma atrás de um controle de red team
A implementação está completa até a Fase 8, endurecimento. Estes são os números que o repositório relata: o fuzzing rodou sob o Subsistema do Windows para Linux (WSL), e a testnet rodou sobre sockets reais de Protocolo de Controle de Transmissão (TCP).
| Área | Resultado | Observações |
|---|---|---|
| Vetores de cripto | 36 / 36 | |
| Roteamento de relays | 14 / 14 | |
| Topologia | 41 / 41 | |
| Negociador / correlação de volume | 25 / 25 | |
| Testes do workspace | 195 | Todos passando |
| Fuzzing de segurança | 1.17M+ | libFuzzer via WSL, zero crashes |
| Testnet | TCP real | Roteamento de pacotes Sphinx sobre sockets reais |
| Análise de traços | Benigno vs. malicioso | Comparação com traços reais |
Esconde quem está falando, não só o que foi dito
Embaralhar uma mensagem é um problema resolvido. O que isso não esconde é que você mandou uma, para quem, quando e quanto. Só esse padrão muitas vezes basta para identificar as pessoas.
Redações e quem estiver protegendo uma fonte
Ninguém precisa ler a mensagem se consegue ver que uma certa pessoa procurou um certo jornalista às duas da manhã. É o horário e o tamanho que expõem as pessoas.
Empresas rivais que mesmo assim precisam compartilhar dados
Bancos, seguradoras e associações do setor trocam informações enquanto competem. Com quem você passou a falar de repente, e com que frequência, entrega no que você está trabalhando.
Organizações trocando alertas sobre ataques
Compartilhar informação sobre ameaças é útil, mas ser visto compartilhando pode ser justamente a parte sensível. Isto mantém privado o fato da conversa, não só o conteúdo dela.
O que fica em cima da moldagem
- Handshakes com sigilo futuro. O comprometimento de chaves de longo prazo não expõe sessões retroativamente.
- Seleção de caminho ciente de reputação. As rotas preferem relays com comportamento já estabelecido.
- Faróis de aleatoriedade distribuída. Nenhuma parte sozinha controla a entropia da seleção de caminho.
- Provas de reputação de conhecimento zero. Um relay prova que passa de um limiar de reputação sem revelar a sua pontuação.
- Triagem de nós-guarda. Resistência a Sybil no ponto em que ela mais importa.
Onde as garantias param
- Só tráfego interno. As garantias fortes valem dentro do consórcio. A saída para a clearnet é mais fraca, e não se afirma o contrário.
- Empírico, não provado. Os resultados são limites empíricos sob o modelo de adversário declarado. Não são provas matemáticas.
- A latência é inerente. Latência de vários segundos é uma propriedade do projeto, não um problema de ajuste que será otimizado até sumir.
- Ferramenta errada para duas partes. O AEGIS serve para esconder o grafo de relacionamentos entre muitos pontos. Para um enlace de duas partes, as defesas de camada de enlace se saem melhor.
- Ainda há pesquisa em aberto.
docs/ops/RESEARCH_AGENDA.mdé a lista honesta do que não está terminado.
cargo deny auditoria de dependências e uma política de todo o workspace proibindo código unsafe. Para uma pilha de rede em Rust que trata entrada adversária, #![forbid(unsafe_code)] em todo o workspace é a linha que mais sustenta o projeto.