Всем привет!
Я делаю AIVPN — VPN-протокол и набор клиентов, в котором задача не сводится к «еще одному зашифрованному туннелю». Смысл в другом: современные DPI-системы часто блокируют не содержимое, а форму соединения. Им важны размеры пакетов, интервалы между ними, характер рукопожатия и общая поведенческая сигнатура.
В основе одной из ключевых идей проекта, метода Signal Reconstruction Resonance, лежит моя патентная заявка в США: USA 19/452,440 от Jan 19, 2026.
С детства не люблю, когда меня ограничивают в доступе к информации. Читать я научился рано, примерно в три года, и с тех пор очень люблю читать книги. Когда я учился в школе, мама даже просила библиотекаря не выдавать мне новые книги, потому что я вместо домашнего задания читал по 2-3 книги в день (Интернета тогда небыло, чернобелый телевизор работал только при правильном ударе по крышке ? ). Но это не особенно помогало: я все равно находил способы добывать нужные книги. Сейчас, когда я смотрю на то, что происходит в мире с доступом к информации, мне это тоже совсем не нравится. Поэтому AIVPN для меня не только технический проект, но и попытка хоть немного облегчить жизнь людям, которые, как и я, плохо переносят искусственные ограничения.
Сегодня VPN часто “палится” не потому, что плохо шифрует, а потому, что слишком узнаваемо выглядит.
Именно поэтому AIVPN пытается решать две задачи сразу:
шифровать трафик;
делать его менее заметным для DPI.
Ниже коротко покажу только самые сильные фишки проекта, без лишнего погружения в детали реализации.
Что в AIVPN самое важное
1. Нет открытого идентификатора сессии
Каждый пакет несет короткий криптографический тег, а не постоянный открытый идентификатор. Это уменьшает заметность протокола и позволяет серверу быстро находить нужную сессию без лишнего служебного шума.
В упрощенном виде пакет выглядит так:
TAG | MDH | encrypt(pad_len || inner_payload || random_padding)
Где TAG — короткий тег сессии, а MDH — маско-зависимый заголовок.
2. Малозаметный старт соединения
Я сознательно уходил от тяжелого и очень заметного рукопожатия. Клиент может начать обмен сразу, а сервер уже по первому пакету пытается восстановить сессию и проверить ее корректность.
Смысл не в том, чтобы «вообще убрать рукопожатие», а в том, чтобы не оставлять снаружи простой и стабильный шаблон, который удобно определять DPI-системам.
3. Маскировка под реальные типы трафика
В AIVPN есть маски трафика. Маска задает не только внешний заголовок, но и поведение потока:
какие размеры пакетов встречаются чаще;
какие интервалы между пакетами выглядят правдоподобно;
как меняется поведение трафика во времени.
Сейчас в проекте есть профили, ориентированные на трафик вроде:
QUIC;
WebRTC/STUN;
DNS over UDP.
То есть задача не в том, чтобы просто зашифровать UDP, а в том, чтобы сделать его менее похожим на типичный VPN-трафик.
4. Нейронный резонанс
Самая необычная часть проекта — Нейронный резонанс, если по простому я нашел способ определение типа задач быстро без сложного инференса, что практически мгновенно определяет что это за задача и реакцию на неё.
Оформлена как патентная заявка в США: USA 19/452,440, от Jan 19, 2026, SYSTEM AND METHOD FOR UNSUPERVISED MULTI-TASK ROUTING VIA SIGNAL RECONSTRUCTION RESONANCE.
Но здесь нет никакой огромной LLM, которая живет на VPS и съедает память. У каждой маски есть компактный сигнатурный вектор, из которого строится маленькая нейросеть. Она смотрит на статистику текущей сессии:
размеры пакетов;
интервалы между ними;
энтропию шифротекста;
общую динамику потока.
Дальше считается ошибка реконструкции. Если она растет, это означает, что реальный трафик перестает быть похож на ту маску, под которую он должен выглядеть.
Проще говоря: сервер видит, когда маска начинает «сыпаться».
5. Автоматическая смена маски
Если сервер замечает, что текущая маска стала подозрительной или сеть начала ее явно душить, профиль помечается как скомпрометированный, а сессия переключается на резервную маску.
Это одна из главных фишек проекта. Обычный VPN часто живет по схеме «пока работает — работает, а когда спалили — все умерло». В AIVPN идея другая: если один профиль начали ломать, туннель должен попытаться перелинять, а не просто упасть.
6. Нормальная криптография без экзотики
Я не пытался изобрести собственную криптографию. В основе используются понятные примитивы:
X25519;
ChaCha20-Poly1305;
BLAKE3.
Плюс есть ротация сессионных ключей, чтобы не держать слишком большой объем данных под одним и тем же ключом.
Чем это отличается от обычного VPN-подхода
Если совсем коротко:
WireGuard и OpenVPN в первую очередь решают задачу безопасного туннеля;
AIVPN пытается дополнительно решать задачу снижения заметности транспорта на уровне статистики и поведения.
То есть AIVPN — это не «еще один VPN с другим набором шифров», а попытка сделать протокол, в котором маскировка встроена в архитектуру изначально.
Что уже есть
Сейчас в проекте уже есть:
сервер на Linux;
CLI-клиент;
macOS-клиент;
Android-клиент;
Windows-клиент в тестировании.
Репозиторий проекта: github.com/infosave2007/aivpn
Поддержка проекта
Сейчас один из следующих больших шагов для AIVPN — полноценная iOS-версия.
И здесь расходы уже не только на разработку. Чтобы нормально довести iOS-клиент до пользователей, нужны:
оплата Apple Developer Program;
разработка и поддержка iOS-приложения;
публикация и сопровождение в App Store.
Поэтому если вам близка идея проекта и вы хотите ускорить развитие протокола и выпуск iOS-версии, AIVPN можно поддержать донатом.
Ссылка на поддержку: https://t.me/tribute/app?startapp=dzX1 ?
Все такие донаты я планирую направлять именно на развитие проекта!
Мне хотелось сделать VPN, который не просто шифрует пакеты, а думает о том, как эти пакеты выглядят снаружи.
Поэтому в AIVPN появились:
короткие криптотеги вместо открытого идентификатора сессии;
малозаметный старт соединения;
маски с правдоподобным поведением трафика;
нейромодуль, который следит за деградацией маски;
автоматическая смена масок без разрыва туннеля.
Получился не «магический анти-DPI плащ», а инженерная попытка повысить живучесть туннеля в мире, где обычного шифрования уже недостаточно.
Если тема интересна, буду рад обратной связи по архитектуре, коду и идеям развития.
Комментарии (122)

Robyn_rock
06.04.2026 14:09Большинство кто из России только одно интересует. Гуляет ли через белые списки и работает ли вообще. А свистоперделки они так и будут свистоперделками, если не работает.

MaxxDamage
06.04.2026 14:09Проблема белых списков решается не навороченным впн, а наличием сервера, который в эти БС входит. Без этого, можно как угодно маскировать и шифровать - не поможет.
Ну а если такой сервер есть, то и существующих протоколов хватит. По крайней мере пока

lymyr119
06.04.2026 14:09Я не шарю , но правильно ли я понял , что если белые списки введут , то обойти у всех уже не получится? Под всеми я имею ввиду , что даже домохозяйки ставят vpn и заходят в телегу.

DNess
06.04.2026 14:09Да. Смысл белых списков это сходу не пускать никуда кроме как туда куда это явно разрешено. Там в общем случае до этапа когда мы начинаем мимикрировать под что-то даже не дойдёт. В принципе тут тоже есть свои хитрости но они уже посложнее будут.

MaxxDamage
06.04.2026 14:09Да. И это пока только на мобильном. Если врубят БС для проводного - всё, туши свет. Это будет чистейший чебурнет, даже Китай будет нервно курить в сторонке.

xenon
06.04.2026 14:09Вроде даже сейчас у коммерческих VPN все работает с БС. (Поправьте, если я не прав, просто мне самому БС сложно проверить).
Насколько я понимаю, там есть непреодолимая сложность. Было бы очень просто сделать тупо белые списки по IPv4 адресам. Это бы быстро работало, жрало бы мало ресурсов, и было бы принципиально непреодолимо. Но есть запердыка - их не составишь. Нельзя описать живой организм. Какой-нибудь Сбер или Озон может постоянно запрашивать у хостера новые серваки пачками, а они же не в БС - значит, они не будут работать. Как решение - в БС вносятся не конкретный длинный и точный список IPшников, а сразу все огромные подсети хостера.
То есть, если (от балды говорю детали) Озон хостится на VK Cloud, и поэтому весь этот VK Cloud разрешен для Озона. VPN который обходит это - тоже покупает хостинг на VK Cloud и притворяется Сбером.Ну и БС сейчас работает на мобилах не по чьей-то гуманности и доброте, а потому что с мобильниками просто люди ходят. Если человек не может вызвать такси - ничего страшного, перебьется. А вот проводный Интернет - это уже, в том числе, бизнес. Если малый бизнес сможет заходить только на разрешенный властями Озон, то как вам этот малый бизнес добудет китайские трусы и носки, смартфоны и чехольчики чтобы выложить их на этот Озон? Чтобы их добыть, надо иметь свободный интернет, читать много разных сайтиков, общаться с зарубежными поставщиками (и не в Максе, их ведь в Макс специально не пускают). Так что, введение БС для проводного интернета выглядит гораздо более болезненным.

Roman_Pokora
06.04.2026 14:09Сбера пока нет в белых списках

s5384
06.04.2026 14:09Есть официальный список от минцифры, а есть белый список операторов связи. Сбер, как и многие другие банки, входят в список вторых.
Те же CDN сервера, VK/Yandex cloud не входят в список минцифры, но успешно работают во время действия белых списков

Hardoman
06.04.2026 14:09В списки операторов связи Сбер не входит. Туда входят всего 3 банка: Альфа, ВТБ и ПСБ

f_yakovlev
06.04.2026 14:09если детектят что к серверу из БС идёт впн-трафик, то применяют санкции. Так что протоколы тут нужны не детектируемые

rendov
06.04.2026 14:09Из белосписочной виртуалки в облаке яндекса/вк можно трафик перегонять на российский VPS который вне БС, а уж с него перекидывать дальше зарубеж. Наверно, палева будет меньше. Но мне кажется, что эти облака вскоре тотально пофиксят, а удачливым людям IP заменят на другие, вне диапазонов БС.
Я вот жду когда уже сделают КВН мимикрирующий под Макс, передавая через их сервера данные в виде аудио/видеозвонка. Конечно, придется иметь целых два аккаунта, с которого звонишь (для клиента на телефоне), и кому звонишь (серверная часть). Да и сходу видится возможность детектирования таких звонков по длительности, необычному содержимому, от чего аккаунты вмиг забанят. Но как мысленный эксперимент забавно.
xenon
06.04.2026 14:09Мне другое интересно. В Максе скопировали телеграмную фишку с безлимитным серверным хранилищем?
Вот введение рутуба имело и положительный эффект - можно было перелить все свои видео на рутуб. (А то вдруг на ютубе что-то случится, удалят отдельное видео или весь канал, аккаунт). Бесплатная резервная копия - это всегда хорошо!
Подходит ли Макс чтобы хранить там что-то? У меня например личный криптоконтейнер в 100 гигов - его туда можно положить? (он шифрованный, так что пусть читают, я не против)
s5384
06.04.2026 14:09Если разбить на части, то храни. Только насчёт надёжности сомнительно, что в один прекрасный день аккаунт не заблокируют или один из файлов вдруг станет недоступным

s5384
06.04.2026 14:09Уже есть туннели через звонки. Недавно видел статью, где через ВБ конференции прокидывали туннель, а ещё раньше через ВК звонки и Яндекс телемост

SilvaDragon
06.04.2026 14:09Ну, в таком случае правильно было бы на уровне клиента (если таковой есть) использовать сторонние vpn решения по открытым сервакам (их главная, пока что, проблема - постоянная ротация списков). Тогда и vpn будет исполнять и доступ, и защиту одновременно

MaxxDamage
06.04.2026 14:09Использование серверов гораздо меньшая из проблем, чем их поиск. Их сейчас уже практически нет. Даже яндекс резко прикрутил гайки, очень сложно найти VPS с адресом из БС. А с учётом того что поиск по факту платный, и сам адрес может в любой момент стать тоже недоступен... лотерея короче

Anatoliy_rnd
06.04.2026 14:09Еще какая, при этом вроде вообще пригрозили белосписочным если будет повторение таких случаев то исключат из клуба белосписочных.

MaxxDamage
06.04.2026 14:09Так там все методы такие - сохраните адреса из БС для VPS - исключим из БС. Не станете блокировать КВН - заберём аккредитацию, лицензию, и т.д.
Не станете стучать, что юзер использует на смартфоне КВН - то же самое

Kenya-West
06.04.2026 14:09Идеи выглядят новаторскими, а относительная зрелость продукта (не просто реализация протокола, но и клиенты есть!) подкупает. Метод работы понятен, про архитектуру хотелось бы узнать больше. У вас ядро, модуль, библиотека? Оно может и как сервер, и как клиент работать, или реализации у них разные? Формат конфигурации?
Не хватает также сравнений (желательно по архитектуре и методологии) со связками XRay/VLESS/XTLS-Reality/xHTTP или Sing-Box/NaiveProxy. Рассматриваете ли возможность часть своего функционала распилить на подобные связки или, наоборот, взять что-либо из наработок оттуда к себе.
Также интересуюсь, есть ли возможность интеграции в вышеобозначенные ядра в виде outbound и inbound в их конфигурациях.

nikulin_krd
06.04.2026 14:09Идеи выглядят новаторскими, а относительная зрелость продукта (не просто реализация протокола, но и клиенты есть!) подкупает.
Идеи выглядят так как будто человек не знает как работает DPI и сеть в целом, а "зрелость" продукта основана на ИИшном коде

Mupok
06.04.2026 14:09Хотелось бы чтоб было как в Nekobox встроенный режим прокси, и ты в программах, которые хочешь чтоб работали через ВПН указывал бы этот прокси....

NewGrafon
06.04.2026 14:09Киллер фича, обязанность уже в наши дни учитывая что скоро могут ру сервисы обязать отправлять "куда надо" зарубежные айпишники с которых юзеры подключаются к ру сервисам

noknown
06.04.2026 14:09А что по скорости? Накладные расходы выглядят солидно - есть какие-то тесты скорости в спокойных условиях и в условиях постоянного переключения масок? Как часто в теории могут переключаться маски? Есть ли мультиплексирование и, наоборот, объединение всех соединений в одно?

Diverso
06.04.2026 14:09Есть ли мультиплексирование и, наоборот, объединение всех соединений в одно?
Наоборот? "Объединение всех соединений в одно" - это смысл термина "мультиплексирование".

noknown
06.04.2026 14:09Виноват, описка - демультиплексирование, конечно, имелось в виду. В общем, интересно может ли динамически или статично, с помощью настроек, менять управление количеством соединений. Это же тоже достаточно важный паттерн отслеживания трафика.

svl87
06.04.2026 14:09мимикрировать под dns over udp звучит весьма странно, разве не вызовет подозрение мегабитные потоки типа dns-трафика между домашним подключением и одним сервером?

xenon
06.04.2026 14:09Думаю, это легко обнаружить, но.... все равно стоит сделать! Потому что детектор для нее все равно будет требовать ресурсы и жрать их на каждый DNS запрос. Просто написав код, который однажды, скажем в июне 2026 года будет работать, а уже к июлю 2026 на всех DPI включат его блокировку - на следующие 500 лет стоимость ТСПУ будет чуть выше. Программист реализует технологию один раз, а РКН оплачивает ее блокировку каждый день, вечно.

Zikfrid3000
06.04.2026 14:09Тспу оплачивают провайдеры услуг связи, а деньги они берут из карманов пользователей через удельное удорожание тарифов.

Cat_Matroskin
06.04.2026 14:09ТСПУ оплачивает ГРКЦ к счастью, а живет оно на налоги. А вот СОРМ и Яровая - это да за счет пользователей.

Zikfrid3000
06.04.2026 14:09А монтажные и ремонтные работы? А переделку системы коммуникаций для интеграции в неё этих хреновин? А эксплуатационные расходы (электроэнегрия, аренда помещений)? Тоже гркц? Очень сомнительно.

Cat_Matroskin
06.04.2026 14:09Ну этот комплекс ставится в разрыв (это про систему коммуникаций) - и тут затраты стремятся к нулю, максимум замена модулей.
Для про провайдера это черный ящик с входами и выходами - так что весь ремонт и мониторинг силами ГРКЦ
Монтаж заключается в предоставлении ГРКЦ стойкоместа.
Эксплутационные расходы - касательно аренды - это стойко места и для разного рода правительственных хотелок уже заложены отдельные стойки.
Единственное это электричество - но это на столько малая часть в стоимость интернета, что оно обычно входит в плановое ежегодное повышение тарифов

Snyppi2
06.04.2026 14:09По-моему, сейчас если твой трафик палится, то под подозрение сразу падает айпи, на который этот трафик идёт. В особенности, если на один и тот же адрес много такого подозрительного трафика. Соответственно, поможет ли смена масок, если душат уже скомпроментированный айпи. В таком случае стоит добавить балансировку и комбинировать смену масок и айпи адресов.

Arhammon
06.04.2026 14:09На практике вроде нет, мой IP должен уже давно светиться как новогодняя елка, но тем не менее продолжает работать у нас в зависимости от протокола. Более того адрес попался неудачный, с высоким фродрейтингом и забанен во многих местах снаружи как раз по адресу. Пришлось еще дополнительную ВПСку брать на блокировку оттуда в непопулярной локации. Даже возникает теория заговора, может в РКН кто-то хостингами владеет...

Cerb
06.04.2026 14:09Я вот тут тоже немного удивился. У меня есть машина, там xray на xhttp спрятан за nginx и статикой, редирект /secret/ на инбаунд , на клиентах раздельная маршрутизация. Эту машину спалили, и подслушивают уже неделю, вплоть до невозможности установить SSH. Она прожила 3 месяца.
А есть вторая машина, там xray на /, там нет даже сертификатов, нет домена, инбаунды на случайных портах. Ссылки выглядят vless://IP:port/....., каждый инбаунд - свой порт. И эта машина уже 2 года пашет, единственный раз sni пришлось поменять в том году.

stahanovec25
06.04.2026 14:09каким образом спалили машину на xhttp и спрятанным за nginx xray ?
У меня такая же конфигурация пашет и я думал это самое надежное на данный момент решение

Cerb
06.04.2026 14:09Прошу прощения, я не всю правду сказал. Помимо вышеописанного, там ещё работал telemt. Так как пути телеграм не поддерживает, бюдля него был свой поддомен, и sni-модуль nginx отправлял запросы для этого домена на порт telemt, остальное отправлял в nginx, где уже разруливались пути.
Так вот, единственное моё предположение, что спалил машину не xhttp, а полсотни пользователей телеграм, которые 1 апреля в едином порыве стучались на домен с палевными ClientHello. Полагаю, что цензор заметил это, чекнул IP и сделал вывод, что тут работает нежелательное ПО и добавил мой IP в список проклятых.
По таймингу совпадает

stahanovec25
06.04.2026 14:09Ну блин, а зачем вы telemt и свой xhttp запихали рядом?) куда стучится 100 человек. Это же красная тряпка для тспу

Snyppi2
06.04.2026 14:09Мои конфигурации через мосты на xhttp + self sni, рутингом и extra работают нестабильно. Периодически таймауты. Минут 7 пашет, а потом выбивает. Уже и не знаю, как фиксить, разные варианты перепробовал.
На одном конфиге помог переход на tcp (raw) + vision

stahanovec25
06.04.2026 14:09Попробуйте поставить keepalive_requests 100000 и keepalive_timeout 3600s

Prostlalka
06.04.2026 14:09Из удивительного пока все ковыряют эти xray, крутят вертят прячут, у меня коробочная поставка openvpn живёт около 7-8 месяцев до бана, после которого на ней даже веб морда не открывается, потом в той же локации берется новый сервер и поехали заново

Wesha
06.04.2026 14:09Предлагаю Вам ещё более лучшую © идею для маскировки
Подавдяющее большинство современных протоколов ориентированы на статическую сигнатуру (например: «если первый байт — 0×50, а второй — 0×4B, то делаем то‑то, а иначе не делаем»). В то же время ничто не запрещает использовать динамическую сигнатуру (утрированный пример: «если взять первый байт пакета, к нему приплюсовать 15-й байт пакета, и сделать XOR с 118-м байтом пакета, вычесть байт секретного ключа сервера — и в результате получился байт, у которого первая цифа равна текущему часу, а вторая — текущему дню недели, то это попытка установления VPN‑соединения по нашему секретному протоколу, и на неё надо ответить похожим хитрозакрученным образом, а иначе не надо»). Желаю ТПСУ удачи понять, что это сигнатура.
Более того, такой «хендшейк» элементарно прятать, скажем, в совершенно нормально выглядящем JS, HTML, GIF...

uranik
06.04.2026 14:09Вот тоже думаю все изобретают сложности с https и сертификатами, а почему нельзя просто по 80 порту и протоколу http гнать странички типа <script>let js="skadjhfuiyrewihkdsc...";</script> где в js шифровать все что хочешь.

nikulin_krd
06.04.2026 14:09Вы видимо не представляете какой "приятной" скоростью будет обладать данное решение. Не говоря уже о накладных расходах

Arhammon
06.04.2026 14:09Есть например логины в софте, где скорость не важна. Опять же месенджеры. Как второй железобетонный канал по идее жизнеспособно в специфичных случаях.

nikulin_krd
06.04.2026 14:09Ну давайте еще перейдем на старые методы доставки как у малвари, через TXT записи DNS. Проходить будет вообще все

xenon
06.04.2026 14:09Вы это с сарказмом написали, а мне это кажется хорошей идеей. Медленно? Да. И пусть. Пусть будет быстрый КВН (будем им пользоваться) и вот этот вот медленный (про запас).
Медленный но надежный нужен хотя бы для bootstrapping, ибо "чтобы скачать КВН, тебе нужно иметь КВН!". Как подключать новое устройство, если все ПО и конфиги - в телеге, а телега не пашет? Хоть DNS тоннель, хоть через пинги, пусть хоть час выкачивает 10 мегов, но чтоб хоть как-то был рабочий способ.

s5384
06.04.2026 14:09Да, как ниже написали, для актуализации конфигов очень неплохой вариант.
И кстати в августе это было единственным рабочим вариантом выйти в глобальный интернет, тогда даже белых списков не придумали. Я даже Ютуб смотрел, хоть и на 480p, но зато при нулевом балансе, когда открывается только сайт оператора

ITMatika
06.04.2026 14:09Идея на самом деле здравая. И для мессенджеров её хватит с лихвой. Если не использовать web движки js и т.п., а просто использовать html документы и передаваемые "картинки", как криптоконтейнеры. Т.е. сервер будет заточен на генерацию примитивных html документов с минимальными накладными расходами. Приложение на стороне клиента будет получать такой документ, детектировать в нём криптоконтейнер и расшифровывать. Вопрос в том, что ТСПУ тоже будут постепенно учиться детектировать всё разнообразие таких криптоконтейнеров. И хватит ли им мощности и способности различать такие контейнеры от легального http трафика, завёрнутого в https?
С другой стороны, уже хватает протоколов, которые мимикрируют под https, но между тем, ТСПУ большую часть этих протоколов научился распознавать?
Wesha
06.04.2026 14:09Так в том‑то и хохма этой идеи, что не нужно облегчать ТСПУ задачу: «взять N первых байт пакета и сравнить их с известными значаениями» — это для любой железяки плёвое дело; а вот «смотреть на 100500 пакетов, зная, что какие‑то из них КВН‑овские, но при этом все они выглядят как совершенно обычные HTML/JS/GIF» и пытаться понять тот самый вышеописанный секретный танец — это уже задача уровня «Бог».

K0Jlya9
06.04.2026 14:09Кто-нибудь пробовал уже делать обратный впн, когда ваш виртуальный сервер за границей, возможно даже без белого ip4 адреса, сам подключается на впн сервер в рф? Дальше всё работает как обычно потому что клиентам внутри туннеля всё равно кто сервер а кто клиент у транспортного туннеля.

gryphon-06jouster
06.04.2026 14:09У меня так обычный WG работает. Если назначаю сервером точку в России - работает. Если назначаю сервером точку вне России - не работает. Будет ли работать при БС - не знаю, у нас их пока нет

George8585
06.04.2026 14:09Я свой Unifiexpress так подключал, работает, но он не умеет натить в данном сценарии трафик обратно, а так оттуда все пингуется, что здесь стоит

lehshik
06.04.2026 14:09и сразу копию в РКН отправляйте чтобы им удобней было, не нужно хабр читать в поисках новых способов обхода

infosave Автор
06.04.2026 14:09Смотрел с точки зрения открытого кода как если я бы был блокираторатором и у меня был доступ к исходным кодам + написал жесткий эмулятор DPI и тестировал на нем, публичное размещение это хорошо, будет много форков, поменяют маски, чуть приложат свои идеи и будет новые протоколы со своими особенностями, даже если будут белые списки уверен что найдутся способы работы через них.

nikulin_krd
06.04.2026 14:09Т.е. тестирования на нормальном DPI не было? Было "проверено" только на своем велосипеде? Так а где контролируемая среда для тестов? Вы уверены что ваш написанный DPI работает также как ТСПУ?

sundmoon
06.04.2026 14:09Предоставите для тестов настоящий ТСПУ?

nikulin_krd
06.04.2026 14:09У меня нет настоящего ТСПУ, зато он есть у любого провайдера. А самописный DPI это не корректная среда для тестирования.

frenkycastilla
06.04.2026 14:09Форкнул, покопаюсь, потестирую под нагрузкой. Если будут мысли о полезных коммитах - дам знать. Автор - красавчик, спасибо!

infosave Автор
06.04.2026 14:09Спасибо! У меня есть тесты готовые с эмулятором DPI и другие, напиши в личку могу прислать, не выкладывал в Git

Wesha
06.04.2026 14:09Форкнул, покопаюсь, потестирую под нагрузкой. Если будут мысли о полезных коммитах - дам знать. Автор - красавчик, спасибо!
Подпись — «Майор Петров.»

nikulin_krd
06.04.2026 14:091. Нет открытого идентификатора сессии
Каждый пакет несет короткий криптографический тег, а не постоянный открытый идентификатор. Это уменьшает заметность протокола и позволяет серверу быстро находить нужную сессию без лишнего служебного шума.
Но идентификатор сессии все же есть и он не уменьшает заметность протокола. Про "быстро" мы поговорим ниже...
2. Малозаметный старт соединения
Я сознательно уходил от тяжелого и очень заметного рукопожатия. Клиент может начать обмен сразу, а сервер уже по первому пакету пытается восстановить сессию и проверить ее корректность.
Смысл не в том, чтобы «вообще убрать рукопожатие», а в том, чтобы не оставлять снаружи простой и стабильный шаблон, который удобно определять DPI-системам.
Тяжелое и заметное рукопожатие как раз и нужно, причем рукопожатие которое соответствует HTTPS(вы же используете 443 порт), для того чтобы DPI не пометила пакеты и соединение как подозрительное для дальнейшего анализа.
3. Маскировка под реальные типы трафика
В AIVPN есть маски трафика. Маска задает не только внешний заголовок, но и поведение потока:
какие размеры пакетов встречаются чаще;
какие интервалы между пакетами выглядят правдоподобно;
как меняется поведение трафика во времени.
Сейчас в проекте есть профили, ориентированные на трафик вроде:
QUIC;
WebRTC/STUN;
DNS over UDP.
То есть задача не в том, чтобы просто зашифровать UDP, а в том, чтобы сделать его менее похожим на типичный VPN-трафик.
Скорость у такого решения будет еще хуже чем у OpenVPN... Про профили конечно повеселило - это же явный признак для DPI чтобы пометить весь такой трафик. WebRTC/STUN - так WebRTC или STUN? Если WebRTC - то сигнатура чего - сигналинга, RTP-потока? WebRTC/STUN и DNS over UDP - это 2 сигнатуры, которые палятся на раз ввиду того, что в виде постоянного соединения не используются(кроме RTP-потока)
4. Нейронный резонанс
Самая необычная часть проекта —
Нейронный резонанс, если по простому я нашел способ определение типа задач быстро без сложного инференса, что практически мгновенно определяет что это за задача и реакцию на неё.Товарищи "новаторы" отстаньте вы уже от резонанса и хватит его пихать куда ни попадя...
Но здесь нет никакой огромной LLM, которая живет на VPS и съедает память.
Но которая будет неистово жрать проц)))
5. Автоматическая смена маски
Если сервер замечает, что текущая маска стала подозрительной или сеть начала ее явно душить, профиль помечается как скомпрометированный, а сессия переключается на резервную маску.
Это одна из главных фишек проекта. Обычный VPN часто живет по схеме «пока работает — работает, а когда спалили — все умерло». В AIVPN идея другая: если один профиль начали ломать, туннель должен попытаться перелинять, а не просто упасть.
DPI не просто сначала чуть хуже делает соединение, она просто берет и рубит его и IP сервака заносит в ЧС. Причем перед этим собрав всю информацию о пакетах. Так что потом смена сервера не поможет
6. Нормальная криптография без экзотики
Я не пытался изобрести собственную криптографию. В основе используются понятные примитивы:
X25519;
ChaCha20-Poly1305;
BLAKE3.
Плюс есть ротация сессионных ключей, чтобы не держать слишком большой объем данных под одним и тем же ключом.
Которая палится по высокой энтропии трафика...

Wesha
06.04.2026 14:09палится по высокой энтропии трафика...
Разбавляйте поток (например, перемежая пакеты)
речами Солнцеликогомусором с низкой энтропией.

phikus
06.04.2026 14:09Скорость у такого решения будет еще хуже чем у OpenVPN
Я стесняюсь спросить - что не так со скоростью OpenVPN? В каких именно сценариях вам её не хватало?

ne_pridumal_nik
06.04.2026 14:09Было бы интересно ещё интегрировать это в панели типа Remnawave или 3X-UI, конечно

infosave Автор
06.04.2026 14:09Интегрировал в свою web панель https://github.com/infosave2007/amneziavpnphp

Solideogloria26
06.04.2026 14:09Поставил панель, установил AIVPN, добавил клиента, добавил в приложение, подключение идет, трафик появился в панели, но каждую секунду отваливается соединение.

Blackdait
06.04.2026 14:09Идея хорошая, даже отличная, но говорят, что под "подозрение" попадёт скоро весь иностранный трафик¹, тогда даже эта идея уже не поможет, не считая самого чебурнета, который в этом случае будет уже не нужен если "дорогу" народу просто закроют.
¹ кажется где-то на этом ресурсе я такое вычитал, что касается чебурнета, "необходимость" в нём пропадёт если следить за каждым битом информации, что физически невозможно реализовать ни кому, а обрубать физически ни кто не станет, тогда и импорта ни какого не будет, ну если только "наши торовые партнёры" не согласятся перейти или подключить наши интернет протоколы, которые бы были бы прозрачны "для кого надо", как это произошло с системой карты Мир.

nikulin_krd
06.04.2026 14:09А в чем "отличность" идеи? Можете аргументировано ответить? Я пока вижу проект, который призван собирать деньги, а не решать какую-то проблему... Даже Ai туда впихнули, чтобы быть на слуху

Shrimpp234
06.04.2026 14:09Извиняюсь за тупой вопрос, но где брать connection key? Я тупенький и новичок в теме

infosave Автор
06.04.2026 14:09Посмотрите инструкцию https://github.com/infosave2007/aivpn/blob/master/README_RU.md

nikulin_krd
06.04.2026 14:09Из вашей же инструкции
Провайдеры и GFW (китайский файрвол) палят WireGuard и OpenVPN за доли секунды по размерам пакетов, интервалам и хэндшейкам. Можете шифровать трафик хоть тройным AES — DPI-системам плевать на содержимое, они блокируют саму форму соединения.
Лично пользуюсь одним VPN-провайдером у которого работают и Wireguard(AmneziaWG) и OpenVPN с кастомным шифрованием))

Marius78
06.04.2026 14:09Подскажите как обойти бс, мегафон не пускает, другие операторы пускают, взял впс с белым айпи

HyperWin
06.04.2026 14:09Написать в РКН чтобы они подобрели и добавили твоего провайдера в белые списки. Не забудь сказать что нужно для обхода блокировок

mzeg
06.04.2026 14:09Идею как-то уже подкидывал. Для реализации, к сожалению, не хватает компетенции. Если кто-то сможет реализовать, буду весьма признателен. Яндекс-телемост работает через БС. Цель - сделать аналог удаленного рабочего стола через Яндекс-телемост. Где-то (на сервере или на домашнем компе) подключаемся к телемосту, и с мобильного интернета подключаемся к этой же конференции. Демонстрировать звук и рабочий стол телемост умеет из коробки, осталось передать в обратную сторону команды клавиатуры и мыши. И делать это надо либо через звук, либо создавать еще одну конференцию и передавать через видео. Только безо всякой стеганографии - иначе вопрос блокировки - дело времени.

zdev-online
06.04.2026 14:09Хотелось бы знать требования к железу для сервера.

infosave Автор
06.04.2026 14:09VPS 1G 1vCPU 10GB подойдет, скорость соединения будет примерно -30%

nikulin_krd
06.04.2026 14:09Вы же покажите видео замеров скорости при включенном вашем ВПН на такой VPS?
И с выводом top на сервере

infosave Автор
06.04.2026 14:091 Ядро CPU 1 ГБ Память 10 ГБ NVMe 150Мб клиент MacOS x86

nikulin_krd
06.04.2026 14:09А что там в /usr/local/bin?
И покажите замеры на speedtest.net. Если у вас VPN ваш работает, проблем с доступом к нему у вас не должно быть

infosave Автор
06.04.2026 14:091 Ядро CPU 1 ГБ Память 10 ГБ NVMe 100Мб клиент MacOS x86 (провайдер дает 500/20 Mb) (результат после новых оптимизаций протокола)

Zarmi
06.04.2026 14:09Почему исходящий 3 Мбит/с всего? Что надо сделать чтобы тебе самые 100Мбит/с получить?

ASimonenkov
06.04.2026 14:09Чет мне кажется всё это по сути бесполезно, когда у нас заблокирована большая часть международного интернета приходится пускать большую часть трафика через КВН и как раз это очень хорошо видно, как это не масикируй...Тут только распределенная сеть на подобии TOR в теории может помочь, но с маскировкой трафика защитой от DPI...

Dok_DD
06.04.2026 14:09конечно. нормальные DPI анализируют паттерны трафика и поведения. и если у вас весь (или подавляющая часть) трафик идет "куда-то туда", то это "туда" вам заблокируют

aax
06.04.2026 14:09Основная суть в том, что VPN/прокси по своей концепции, это не средство обхода блокировок(весь концепт VPN/прокси не про это изначально). Его использование это для этой цели - это по принципу “взяли уже имеющиеся хорошие плоскогубцы и забиваем ими гвозди, пока это получаеться”.
VPN/прокси как средство обхода блокировок это говоря образно некий “Неуловимый Джо”(который неуловим, лишь постольку поскольку, поскольку, и пока никто в серьез этим не занят, хотя как его ловить понятно). По части детекта факта применения VPN/прокси имеет концептуальный патерн - специфичный маршрут трафика.
Так, например, цензуре нет нужды проверять насколько реалистично Ваш, к примеру, “VLESS + Realiti” в дефолте проксирует Майкросовтовский сайт(в попытке найти едва уловимые различия) - достаточно сопоставить SNI в Вашем трафике, и пул адресов вашего хостинга в Нидерландах.
Тоже самое про другие VPN/прокси применяемые как средство обхода блокировок - прячем "мух"(специфику пакетов), а "слон"(крайне специфичный маршрут трафика) виден всем желающим. Его то в 2026 году в РФ и начали "рубить" и технически(падеж стелс-VPN/прокси по мере апгрейда ТСПУ), так и экономически - решением о заградительных тарифах на трансграничных трафик конечного пользователя.
Гораздо больший потенциал как показывают и теория и практика имеют “неоднокликовые” решения вроде Zapret(которым серверная часть не нужна и как следствие отсуствует слив трафика в специфичный маршрут). Причем трансграничный пиринг инфраструктурных гигантов тарифицируеться не как у пользователя, и если вы обратились фактически например к российским GGC, то ваш трафик для вашего провайдера внутрироссийский.

tanishadelay
06.04.2026 14:09Всё круто ... Но как же Android/Windows саппорт ? Ждём реализации проекта и в этом направлении!

xenon
06.04.2026 14:09Интересная идея, но у меня есть два предложения.
1. Мне кажется, архитектурно можно сделать лучше. Не надо заменять уже имеющиеся технологии, надо дополнить их. Как пример - сделать просто свой TCP тоннель, сокет тут, сокет там, все как делает telnet/netcat, но он должен быть статистически хитрый. Подстраивать размер пакетов, интенсивность. Иногда подтормаживать трафик (да, это неудобно, но если это поможет обойти ТСПУ - пусть). Иногда - добавлять в него мусор (и вырезать мусор на той стороне). В общем - давать просто транспорт, а вот основное щифрование и укладку пакетов в этот транспорт пусть делают другие приложения. Чтобы разделить функции. Может быть сделать это как-то на уровне netfilter или даже qdisc (но qdisc вроде не может менять пакеты, только задерживать их).
2. Как выше уже заметили - подстраивать стратегии надо на клиенте, а не на сервере, потому что ТСПУ стоит у клиента. Он один раз находит для себя рабочую схему тоннеля и дальше пусть ее использует с любым поддерживаемым VPN сервером, хоть в Нидерландах хоть в Финляндии.

Vasiliit
06.04.2026 14:09сделал как написано, но где искать ключ? Для программы на андроид?

infosave Автор
06.04.2026 14:09Нужно свой сервер поднять и на него установить серверную часть и сгенерить ключи или установить мою панель для управлением VPN серверами и установить через нее https://github.com/infosave2007/amneziavpnphp

SteevenSenegal
06.04.2026 14:09Сделал всё по инструкции.
Подтянул проект для андроид-клиента, сбилдил, запустил.
Пофиксил у себя локально проблему с парсингом (точнее, с формированием самого ключа), без фикса которой ничего не работало (и не работает на виндовом клиенте).
Всё завелось, однако интернет не работает(
В логах ошибки/реконнекты вида:
"Tunnel error: Session error: TX without RX: 16446 bytes sent in 45.406373889s since last RX — reconnecting (Fix with AI) java.lang.RuntimeException: Session error: TX without RX: 16446 bytes sent in 45.406373889s since last RX — reconnecting"к сожалению говорящие сами за себя.

XRay108
06.04.2026 14:09AI я так понимаю не справился?

SteevenSenegal
06.04.2026 14:09На текущий момент входящих пакетов практически нет не смотря на то, что всё что нужно развёрнуто.
Тем не менее нужно сделать скидку на то, что у автора возможно ещё не всё готово, чтобы работало прям "в бою".

nikulin_krd
06.04.2026 14:09Но он утверждает что все готово и показывает какие-то скрины и видео...

SteevenSenegal
06.04.2026 14:09У него может и работает, но это далеко не всегда означает (особенно в текущих условиях), что заведётся у всех и каждого.
Потому я предпочёл не кидаться камнями, а помочь чем могу в разработке/тестировании, по крайней мере со стороны Android.

mrwindowspro
06.04.2026 14:09Это максимально правильное направление, не думал что что-то подобное уже так скоро может появиться. Максимально грамотное и верное направление. Успехов вам с вашим проектом, оно гораздо больше значит как идея, чем очередной VPN для многих.

nikulin_krd
06.04.2026 14:09В чем «грамотность» и «правильность» направления? Можете тезисно свою точку зрения объяснить?
opensophy
Отличный проект и интересная идея! Было бы здорово увидеть демонстрацию его работы в действии. Небольшой пример или скринкаст помогли бы читателям наглядно оценить функционал и убедиться в эффективности решения.
infosave Автор
venanen
IP-адрес лучше всё-таки замазать.
IIIIIIIIIIIIIII
Есть ли решим локального прокси? Чтоб я сам мог решать какой трафик маскировать путем направления на 127.0.0.1:port
Как у ByeDPI, например
favorit55
Братское сердце, благодарю тебя за такую крутую фичу, блин реально решил и избавил от головной боли, с удовольствием отправил тебя донат во благо развития.
michaelpastushkov
Всем привет. У меня очень похожая идея - great minds think alike ;) - но существенно проще. Суть ее в protocol-less коммуникации (обфусцированной, ясен пень), плюс случайный балласт чтобы нельзя было обнаружить паттерн. И тоже US патент ... Работает на всех платформах + CLI и часто обходит блокировки. beta.p4pn.net. Ищу единомышленников. Пишите michael@pastushkov.com - тестирование в РФ нужно как водух!!
Slamharder
Было бы неплохо сделать подробную инструкцию по управлению, где брать ключи для подключения к примеру и что где править в случае чего
FLORIST87
Олег, спасибо большое за эту идею и замечательное приложение! Как именно я бы мог (как просто пользователь) получить ключ для подключения приложения на Android?
infosave Автор