Подробнее о протоколе Trojan
Trojan создавался под китайский Great Firewall (отсюда оригинальное название Trojan-GFW) с одной идеей: вместо того чтобы прятать VPN-трафик под обфускацию, имитировать самый распространённый протокол интернета — HTTPS.
Технически Trojan слушает на 443 порту с настоящим TLS-сертификатом. Клиент отправляет: SHA-224-хеш пароля (56 hex-символов) + CRLF + SOCKS5-подобный запрос + CRLF + payload. Если хеш совпадает — сервер открывает прокси-туннель. Если нет (или это случайный пробник DPI) — сервер прозрачно проксирует соединение на настоящий веб-бэкенд (любой Apache, nginx, Node.js, статический сайт). DPI получает реальный HTTPS-ответ от настоящего веб-сервера.
Это даёт ключевое свойство: активное пробирование Trojan-сервера показывает поведение, неотличимое от обычного HTTPS-сайта. Можно даже зайти на адрес Trojan-сервера через обычный браузер — увидите настоящую страницу, а не «ошибка соединения».
Trojan-Go — Go-реализация (p4gefau1t/trojan-go) с расширенным функционалом: мультиплексирование (повышение пропускной способности), правила маршрутизации, CDN-режим (Trojan over WebSocket+TLS), AEAD-шифрование payload поверх TLS, форжинг TLS-fingerprint (uTLS). Современные клиенты обычно совместимы с обоими реализациями.
Уязвимость: TLS-in-TLS детектирование. Trojan гоняет TLS внутри TLS, и DPI через анализ размеров handshake-пакетов всё ещё может отличить его от обычного HTTPS (proof-of-concept Trojan-Killer от автора Xray в 2023). Именно поэтому в современных условиях Trojan уступает VLESS+Reality, который от этой проблемы защищён. На сегодня в России Trojan работает у большинства провайдеров, но в качестве основного варианта чаще выбирают VLESS+Reality+XHTTP.
Поддержка в клиентах: v2RayTun, v2rayN, NekoBox, Hiddify Next, Karing, Streisand, Shadowrocket, Happ, sing-box, FoXray. Конфиг — строка trojan://пароль@домен:порт.