Термин глоссария

MTProto

Mobile Transport Protocol — протокол Telegram

Коротко

Собственный протокол Telegram для связи приложений с серверами: шифрование сообщений, сессии и транспорт.

Что это

MTProto — протокол, по которому приложения Telegram общаются с серверами мессенджера. Документация Telegram описывает его как протокол доступа к серверному API из приложений на мобильных устройствах. Современные клиенты используют версию 2.0.

Из чего состоит

У протокола три уровня:

  • верхний — запросы к API и ответы в двоичном виде;
  • средний — шифрование каждого сообщения ключом авторизации (AES-256 в режиме IGE);
  • нижний — транспорт: как зашифрованные данные едут по сети поверх TCP, WebSocket или HTTP.

MTProto и прокси

Прокси для Telegram работает на нижнем уровне: он принимает транспортный поток и передаёт его серверам, не имея ключа к сообщениям. Поэтому прокси называют MTProto-прокси, а официальную реализацию — MTProxy. Маскировку транспорта обеспечивают режимы и .

Версии

В MTProto 2.0 ключ сообщения считается по SHA-256 с фрагментом ключа авторизации, а случайное дополнение выросло до 12–1024 байт. Первая версия использовала SHA-1 и дополнение 0–15 байт и считается устаревшей.

Источники

  1. Telegram: MTProto Mobile Protocol
  2. Telegram: MTProto — подробное описание
  3. Telegram: MTProto transports

Связанные термины

Упоминается в статьях