AmneziaWG
AmneziaWG — это WireGuard, у которого изменено ровно одно свойство: узнаваемость. Обычный WireGuard начинает соединение пакетом фиксированного вида — одинаковой длины, с одинаковыми первыми байтами, всегда в одном порядке. Такую последовательность опознаёт даже простой анализатор, не расшифровывая ничего. AmneziaWG добавляет параметры, которые эту постоянность ломают: перед рукопожатием отправляется несколько пакетов случайной длины со случайным содержимым, а служебные поля заголовков получают произвольные значения вместо предопределённых. Криптография при этом та же — шифрование WireGuard не тронуто, изменена только внешняя форма.
Коротко
AmneziaWG нужен там, где обычный WireGuard опознаётся по форме пакетов. Цена — совместимость: параметры обфускации должны совпадать у клиента и сервера побайтово, поэтому обычный клиент WireGuard к такому серверу не подключится, и наоборот. Расход трафика тоже чуть выше за счёт добавленных пакетов, но на фоне обычной нагрузки это незаметно.
Частые вопросы
AmneziaWG менее безопасен, чем WireGuard?
Нет. Криптографическая часть у них общая — те же алгоритмы, то же рукопожатие по существу. Изменения касаются только внешнего вида пакетов: их длины, содержимого служебных полей и наличия дополнительных пакетов перед началом обмена. Стойкость шифрования это не затрагивает ни в какую сторону.
Подойдёт ли обычное приложение WireGuard?
Нет, нужен клиент с поддержкой этих параметров. Обычный WireGuard увидит в первых пакетах мусор и не поймёт, что происходит. По той же причине конфигурацию нельзя перенести между ними: значения параметров обфускации — обязательная часть настройки, а не украшение.