Проект ANet (ANet Secure Transport Protocol) развива алтернативен стек за организация на защитени тунели, предназначен за свързване на частни мрежи в условия, при които стандартните решения (WireGuard, OpenVPN) не са приложими по различни причини. Проектът се позиционира не като нов fork на WireGuard, а като „Мрежа на приятелите“ (Friends-to-Friends VPN), с акцент върху използването на утвърдени криптоалгоритми и автономна работа в режим „Dead Man’s Hand“. В ANet се използва собствен транспортен протокол ASTP (ANet Secure Transport Protocol), който осигурява пълно крайно криптиране, устойчиво на големи загуби на пакети и неразличимо от случаен UDP-трафик. Кодът е написан от нулата на езика Rust и се разпространява под MIT лиценз, с изрично забранение за включване на зависимости под GPL 2.0 и 3.0.
Основни характеристики:
- Използване на криптоалгоритми ChaCha20/Poly1305 за потока, X25519 за Ephemeral DH, Ed25519 за удостоверяване. Никакви наследствени алгоритми и „опити за съвместимост с Windows XP“.
- Транспортна архитектура, базирана на QUIC-подобен обвес над UDP, но с собствен фрейминг: всеки пакет е обвит в шифрован „envelope“ с произволно добавъчно запълване и jitter (от 0 до N наносекунди), което маскира процеса на съгласуване на връзката под бял шум.
- Разпределена архитектура с авторизационен сървър (anet-auth), проверяващ fingerprint на клиента (SHA256 от публичния ключ на базата на Ed25519). Самият тунел се изгражда по PSK (предварително споделен ключ), получен чрез 4-фазов handshake (DH + двойно рачета). Ако auth-сървърът падне — мрежата продължава да работи на предварително заредени ключове (failover до пълен локален режим).
- Поддържани платформи: Linux (TUN), Windows (Wintun), macOS (utun), Android (VpnService чрез JNI). Има GUI на egui (Rust-native) и TUI за headless сървъри. Предоставят се бинарни сборки.
В отличие от WireGuard с разпознаваем handshake (Magic number + Noise Protocol) и OpenVPN характерен TLS отпечатък, в протокола ASTP всеки пакет започва със случайна затравка (nonce 12 байта), след която следва шифрован текст с променлива дължина с добавъчно запълване до най-близкия размер на блока (настройва се). За външния наблюдател трафикът не може да бъде различим от случаен. ANet се представя като опит да върне в VPN „физичността“ на ерата на флопи дискове (HDD при приятел), но в цифров вид: PSK (предварително споделени ключове), ръчно управление на маршрути, „zero-knowledge proof“ чрез fingerprint.
Проектът се придружава от кодекс на поведение (Code of Conduct), изготвен в съответствие с принципа на "радикалната честност". В правилата е записано "правото на отхвърляне" (право да се отхвърли всеки разработчик при лош код), "огледален отговор" (оплакванията от токсичност се игнорират), първостепенност на кода (без значение кой е авторът, важното е качеството на кода) и бан за опити за налагане на политическа коректност.
Източник: opennet.ru
