O projeto ANet (ANet Secure Transport Protocol) desenvolve uma pilha alternativa para a criação de túneis seguros, destinados a conectar redes privadas em situações onde soluções padrão (WireGuard, OpenVPN) não são aplicáveis por diversas razões. O projeto é posicionado não como mais um fork do WireGuard, mas como uma "Rede de Amigos" (Friends-to-Friends VPN), com ênfase na utilização de algoritmos criptográficos comprovados e operação autônoma no modo "Dead Man’s Hand". O ANet utiliza seu próprio protocolo de transporte ASTP (ANet Secure Transport Protocol), que garante criptografia de ponta a ponta, resistente à alta perda de pacotes e indistinguível do tráfego UDP aleatório. O código é escrito do zero na linguagem Rust e distribuído sob a licença MIT, mas com uma proibição explícita de inclusão de dependências com GPL 2.0 e 3.0.
Principais características:
- Uso de algoritmos criptográficos ChaCha20/Poly1305 para fluxo, X25519 para DH efêmero, Ed25519 para autenticação. Nenhum algoritmo legada ou "gambiarras para compatibilidade com Windows XP".
- Transporte baseado em um envoltório semelhante ao QUIC sobre UDP, mas com um frame próprio: cada pacote é encapsulado em um "envelope" criptografado com preenchimento adicional aleatório e jitter (de 0 a N nanosegundos), o que mascara o processo de estabelecimento da conexão como ruído branco.
- Arquitetura distribuída com um servidor de autenticação (anet-auth), que verifica a impressão digital do cliente (SHA256 da chave pública baseada em Ed25519). O túnel é estabelecido através de PSK (chave pré-compartilhada), obtida através de um handshake de 4 fases (DH + double ratchet). Se o servidor de autenticação falhar, a rede continua a funcionar com chaves previamente carregadas (failover para modo local completo).
- Plataformas suportadas: Linux (TUN), Windows (Wintun), macOS (utun), Android (VpnService via JNI). Há uma GUI em egui (nativa em Rust) e TUI para servidores sem cabeça. Compilações binárias são fornecidas.
Diferente do WireGuard com um handshake reconhecível (Número mágico + Protocolo Noise) e OpenVPN com uma impressão digital TLS característica, no protocolo ASTP, cada pacote começa com uma semente aleatória (nonce de 12 bytes), seguida por um texto criptografado de comprimento variável com preenchimento adicional até o tamanho do bloco mais próximo (configurável). Para um observador externo, o tráfego é indistinguível do aleatório. O ANet é apresentado como uma tentativa de retornar à VPN "fisicalidade" da era do floppynet (HDD de um amigo), mas no digital: PSK (chaves pré-compartilhadas), controle manual de rotas, "zero-knowledge proof" via impressão digital.
O projeto é acompanhado por um código de conduta (Code of Conduct), elaborado de acordo com o princípio da "honestidade radical". As regras estabelecem o "direito de enviar" (direito de ignorar qualquer desenvolvedor em caso de código ruim), "resposta espelhada" (reclamações sobre toxicidade são ignoradas), a primazia do código (não importa quem é o autor, mas sim a qualidade do código) e banimento por tentativas de impor correção política.
Fonte: opennet.ru
