Сеть
MTProto — фирменный протокол Telegram
Криптографический протокол клиент-сервер коммуникаций Telegram, разработанный братьями Дуровыми в 2013 году; основан на собственной криптографии (AES-256-IGE + RSA + DH), критикуется криптографами за нестандартные конструкции.
Определение
MTProto (Mobile Transport Protocol) — это фирменный криптографический протокол транспорта Telegram, разработанный командой Николая Дурова в 2013 году и используемый для всех клиент-серверных коммуникаций Telegram (сообщения, файлы, голосовые звонки). Текущая версия — MTProto 2.0 (с 2017). Архитектурно это собственный протокол поверх TCP/UDP/HTTP без использования TLS — Telegram реализует криптографию сам.
В контексте VPN-обхода MTProto важен в трёх ролях: (1) сам Telegram-трафик через MTProto, который ТСПУ периодически замедляет; (2) MTProto Proxy как обфускация для обхода ТГ-блокировок; (3) MTProto как референс «protocol-not-TLS» — иногда сравнивают с Shadowsocks-2022, VLESS.
Как работает
MTProto использует трёхуровневую схему: внешний слой обфускации (обычно random bytes), средний слой шифрования (AES-256-IGE с RSA для key-exchange), внутренний слой Telegram API (Type Language messages). Алгоритм:
Auth-key generation (один раз на устройство)
- Клиент инициирует Diffie-Hellman handshake с Telegram DC.
- DC возвращает свой DH-public-key, подписанный своим RSA-private-key.
- Клиент проверяет RSA-подпись (public-key DC встроен в клиент — hardcoded).
- Стороны обмениваются DH-параметрами, генерируют shared
auth_key(2048 бит). auth_keyсохраняется на клиенте и сервере, используется для всех будущих сессий.
Encrypted message format
Каждое сообщение:
msg_key= первые 128 бит SHA-256 от (auth_key, plaintext).aes_keyиaes_ivвыводятся изauth_keyиmsg_key.- Шифрование: AES-256 в режиме IGE (Infinite Garble Extension) — нестандартный режим, который Telegram выбрал из-за встроенной integrity-проверки.
Critique
Криптографы (особенно в 2013–2017 годы) критиковали:
- AES-IGE. Нестандартный, малоизученный режим. Не имеет formal security proofs как GCM или CCM.
- Mac-then-Encrypt vs Encrypt-then-Mac. MTProto использует MtE pattern, который теоретически уязвим к oracle attacks. На практике exploit не показан.
- Custom DH parameters. Telegram использует свои группы вместо стандартных RFC-3526.
- No PFS by default. Без secret-chats нет perfect forward secrecy (с 2014 — есть в secret chats).
Несмотря на критику, на 2026 нет публичного break MTProto. Telegram запустил $300k bounty program, не выплачивались полноценные claim’ы.
Применение в России 2026
В контексте РФ MTProto играет три роли:
1. Сам Telegram
ТСПУ периодически замедляет Telegram (slowdown, а не block) для давления на TG в политическом контексте. MTProto-сессии длятся секунды-минуты, обычно работают. При периодах сильного давления — нужен MTProto Proxy для нормальной скорости.
2. MTProto Proxy как обход
См. отдельную статью MTProto Proxy. Использует MTProto-encoding с дополнительной обфускацией.
3. MTProto как inspiration
Современные VPN-протоколы взяли несколько идей у MTProto:
- Random-bytes preface. Первые байты выглядят как noise — нет TLS-handshake-сигнатуры. Это используется в Shadowsocks-2022, частично в VLESS.
- AEAD with random nonce. MTProto 2.0 перешёл на конструкции близкие к AEAD. Современный стандарт.
- Persistent auth_key. Идея «один handshake — потом долгие сессии» используется в WireGuard (cookie-mechanism).
Тонкости работы MTProto в РФ:
- TCP vs UDP transport. MTProto работает поверх TCP (порты 443, 80) и UDP (для voice/video). UDP блокируется на части операторов, TCP fallback работает почти всегда.
- DC IPs. Telegram использует ~5 ДЦ. IP пулы публично известны (
91.108.4.0/22,149.154.160.0/20). ТСПУ может блокировать конкретные подсети при политических обострениях. - VoIP через MTProto. Telegram-звонки идут через MTProto + Opus. ТСПУ иногда специально режет VoIP (по тайминг-паттернам).
Юзеру: понимать MTProto не обязательно для обычного использования. Но знание помогает в моменты обострений — почему вдруг TG перестал работать (DC-блок vs slowdown vs DC-IP). Решение — MTProto Proxy или полноценный VPN.
Связанные термины
MTProto Proxy — обход блокировок. Shadowsocks-2022 — концептуально близкий протокол. AEAD — современная альтернатива MTProto crypto. Obfuscation — категория, к которой относится MTProto traffic.
Источники
- Telegram MTProto spec — official.
- Cryptography Stack Exchange — MTProto analysis — критика.
- Jakobsen, Orlandi — On the CCA security of MTProto (2015) — академическая критика.