Когда V2Ray, Trojan и Shadowsocks начали ловить блокировки по сигнатуре TLS-рукопожатия (все мы помним «сломанный» Client Hello с невалидным SNI), разработчики поняли: маскироваться под HTTPS — мало. Надо, чтобы твой трафик был неотличим от реального HTTPS, причём не от абстрактного, а от конкретного, живого сайта. Reality (XTLS) делает именно это — он не имитирует шифрование, он переиспользует чужое.
Как это работает. Клиент подключается к серверу, сервер в ответ начинает TLS-рукопожатие с реальным, заранее заданным сайтом (например, microsoft.com). Клиент пассивно принимает его сертификат — без дополнительной проверки со стороны клиента. Параллельно, внутри того же соединения, через механизм XTLS, идёт прокси-трафик. DPI видит идеальное рукопожатие с Microsoft — никаких «левых» сертификатов, никаких подозрительных расширений. Трафик неотличим от обычного посещения легитимного сайта.
Ключевое отличие от предшественников. V2Ray/Trojan маскировались под HTTPS (шифрование своё, сертификат свой — DPI может выучить паттерн). Reality же просто «залезает» в чужое соединение — это называется TLS-level multiplexing. DPI не видит никакого второго слоя, потому что его нет на уровне TLS. Весь прокси-логика — выше, в прикладном уровне XTLS.
Сильные стороны: максимальная скрытность среди TCP-протоколов на сегодня. Не требует фиксированного IP сервера (можно за CDN). Слабые: зависимость от доступности целевого сайта (если он лёг — соединение не установится). Высокие требования к CPU на сервере из-за криптографии. Не любит плохие сети — любая потеря пакетов убивает TCP-соединение целиком.
Статус: активно развивается. XTLS-core (реализация) постоянно обновляется, фиксятся edge-case’ы. Это эволюция, а не революция — V2Ray с Reality можно считать апгрейдом для тех, кто устал от блокировок по сигнатуре.
Ирония: Reality настолько хорошо маскируется, что если ваш провайдер решит заблокировать все соединения с Microsoft (шутка, конечно), Reality упадёт вместе с ними. Идеальной маскировки не существует — только компромиссы.