Техническое FAQ
Этот раздел FAQ рассчитан на продвинутых пользователей. Можете также почитать обычное FAQ.
Общие вопросы
Почему вы используете собственный протокол?
MTProto использует оригинальный метод для того, чтобы достичь надёжности в ныне уязвимой мобильной связи и скорости в доставке больших файлов (например, фотографий, видеороликов и документов размером до 1 ГБ). Этот документ предназначен для разъяснения деталей нашей системы и рассмотрения элементов, которые на первый взгляд трудно понять.
Где я могу почитать про протокол?
Детальная документация протокола доступна на этой странице. Если у вас есть вопросы — пишите в Твиттер.
Примечание: Каждое сообщение, зашифрованное через MTProto, всегда содержит следующие данные, которые будут проверены во время дешифрования, для того чтобы сделать систему надёжной от известных проблем:
- соль сервера (64-битная) — server salt (64-Bit);
- идентификатор сессии — session id;
- порядковый номер сообщения — message sequence number;
- длина сообщения — message length;
- время отправки сообщения — time.
Note 2: Смотрите дополнительные комментарии по поводу использования IGE, SHA-1 и модифицированной схемы encrypt-and-mac.
Почему вы не используете X [ваш вариант]
В то время как другие способы достижения тех же криптографических целей, несомненно, существует, мы считаем, что нынешнее решение является как надёжным, так и преуспевающим в нашей второстепенной задаче — превосходстве над незащищёнными мессенджерами в плане скорости доставки и стабильности.
Почему вы опираетесь на классические криптоалгоритмы?
Мы предпочитаем использовать хорошо известные алгоритмы, созданные в те дни, когда пропускная способность и вычислительная мощность в паре встречались довольно-таки редко. Именно эти алгоритмы оказывают значительное влияние на сегодняшнюю разработку приложений для мобильных устройств, заставляя их авторов избавляться от известных недостатков. Слабые стороны таких алгоритмов также хорошо известны и использовались злоумышленниками десятилетиями. Мы же используем эти алгоритмы в такой реализации потому, что они, как мы считаем, приводят любую известную атаку к провалу. Тем не менее мы были бы рады ознакомиться с любыми доказательствами обратного (до сих пор таких случаев не выпадало), чтобы усовершенствовать нашу систему.
Я — эксперт в области безопасности, и я считаю, что ваш протокол небезопасен.
Вы можете принять участие в нашем конкурсе: Павел Дуров предлагает $200 000 в биткойнах тому, кто первый взломает MTProto. Можете ознакомиться с объявлением и Конкурсным FAQ. Если у вас есть другие замечания, будем рады услышать их на security@telegram.org.
Защита от известных атак
Атаки на основе открытых текстов (Known-Plaintext Attacks)
Согласно определению, атака на основе открытого текста — вид криптоаналитической атаки, при которой у атакующего есть обе версии текста: зашифрованная и исходная. Используемый в MTProto AES IGE устойчив к таким атакам. К тому же незашифрованный текст в MTProto всегда содержит соль сервера и идентификатор сессии.
Атака на основе адаптивно подобранного открытого текста
Согласно определению, атака на основе адаптивно подобранного открытого текста — вид атаки в криптоанализе, предполагающий, что криптоаналитик может выбирать открытый текст и получать соответствующий ему шифротекст. MTProto использует AES в режиме IGE, который безопасен против таких атак. Известно, что IGE неустойчив к blockwise-adaptive атакам, но MTProto исправляет это нижеописанным способом. Каждое сообщение с открытым текстом, которое предстоит зашифровать, содержит следующие данные, которые проверяются при расшифровке:
- соль сервера (64-битная) — server salt (64-Bit);
- порядковый номер сообщения — message sequence number;
- время отправки сообщения — time.
Вдобавок к этому, чтобы заменить открытый текст, также придётся использовать верные AES-ключ и вектор инициализации, зависящие от auth_key . Это делает MTProto устойчивым против атак на основе адаптивно подобранного открытого текста.
Атаки на основе подобранного шифротекста
Согласно определению, атака на основе подобранного шифротекста — это криптографическая атака, при которой криптоаналитик собирает информацию о шифре путём подбора зашифрованного текста и получения его расшифровки при неизвестном ключе. При такой атаке злоумышленник может ввести в систему один или несколько известных шифротекстов и получить открытые тексты. При помощи этих данных атакующий может попытаться восстановить ключ, используемый для расшифровки. В MTProto при каждой дешифровке сообщения производится проверка на соответствие msg_key к SHA-1 расшифрованных данных. Открытый текст (дешифрованные данные) также всегда содержит информацию о длине сообщения, его порядкового номера и соли сервера. Это сводит на нет атаки на основе подобранного шифротекста.
Атаки повторного воспроизведения
Атаки повторного воспроизведения невозможны, поскольку каждое сообщение с открытым текстом содержит соль сервера, уникальный идентификатор сообщения и порядковый номер.
Атака «Человек посередине» (MitM)
Telegram имеет два режима общения: обычные чаты, использующие шифрование клиент-сервер, и секретные чаты, использующие оконечное шифрование и защищённые от атак посредника. Передача данных между клиентом и сервером защищена от подобных атак во время генерации ключей по протоколу Диффи —Хеллмана благодаря алгоритму с открытым ключом RSA, который встроен в клиенты Telegram. После этого, если клиенты собеседников доверяют программному обеспечению сервера, секретные чаты между ними защищаются сервером от атак посредника. Специально для тех, кто не доверяет серверу, в приложении доступно сравнение секретных кодов. Ключи визуализируются в виде изображений. Сравнивая визуализированные ключи, пользователи могут удостовериться, что атака «человек посередине» не была осуществлена.
Шифрование
Вы используете IGE? Он же взломан!
Да, мы используем IGE, но в нашей реализации с ним всё в порядке. Тот факт, что мы не используем IGE вместе с другими элементами нашей системы так же, как и MAC, делает попытки взлома IGE бессмысленными. IGE, ровно как и распространённый режим сцепления блоков шифротекста (CBC), подвержен blockwise-adaptive атакам. Но адаптивные атаки являются угрозой лишь тогда, когда один и тот же ключ используется в нескольких сообщениях (в MTProto это не так).
Адаптивные атаки даже теоретически невозможны в MTProto, потому что для расшифровки сообщений последние должны быть сперва полностью набраны, так как ключ сообщения зависит от его содержания. Что же касается неадаптивных CPA-атак, IGE защищён от них, как и CBC.
Вы используете схему Encrypt-then-MAC, MAC-then-Encrypt или Mac-and-Encrypt?
Наша схема близка к MAC-and-Encrypt, но имеет значительную модификацию: ключ шифрования и вектор инициализации зависят от хэша.
- Мы используем SHA-1 для проверки целостности.
- SHA-1 нужен для необработанной незашифрованной информации.
- Ключ сообщения зависит от SHA-1.
- Обращаем внимание, что AES-ключ зависит от SHA-1.
В результате зависящая от данных ключевая переменная защищена от всех известных типов атак.
Почему вы используете SHA-1 вместо MAC?
С технической точки зрения в нашей реализации SHA-1 можно назвать особой разновидностью MAC (но не HMAC), так как он используется и в качестве ключа шифрования. Мы используем SHA-1, потому что он быстрее, особенно в случаях, когда нужно отправить большие фотографии или видеозаписи (Telegram поддерживает отправку файлов размером до 1 ГБ). Компромисс кажется оправданным, так как это означает, что по-прежнему требуется минимум 2^128 операций (вместо, скажем, 2^256 с SHA-2) только для того, чтобы начать попытки взлома схемы.
Аутентификация
Является ли проверка ключа между клиентами обязательной?
Секретные чаты не используют обязательную аутентификацию через сторонние сервисы или информацию, которая уже известна клиентам собеседников после предшествующего обмена данными. Позднее мы, вероятно, добавим для продвинутых пользователей возможность запрета инициализации в секретных чатах без предварительного подтверждения ключа (при помощи QR-кода, NFC и т.д.).
Поддерживается ли прямая секретность?
Прямая секретность доступна в секретных чатах, но в данный момент требует дополнительных действий от пользователя: придётся удалить секретный чат и создать новый или выйти из своей учётной записи (это удалит все секретные чаты). Прямая секретность поддерживается протоколом: примитивный p_q_inner_data_temp может использоваться для генерирования временных ключей с ограниченным TTL для достижения PFS. Мы работаем над нашими приложениями, чтобы добавить прямую секретность и в обычные чаты Telegram. В данный момент есть возможность создать клиент, поддерживающий прямую секретность, через наш API.
Сайт про Telegram на русском (неофициальный).
Здесь собраны приложения на базе MTProto, переведена некоторая документация с официального сайта, а также работает Webogram.
Почему в Telegram сбрасывается звонок? Это сбой или другая причина?
До этого со звонками в Телеграмм было все нормально. И вот уже несколько дней, начиная с 30 марта 2020 г, звонки прерываются. Идет обмен шифровальными ключами, а затем звонок сбрасывается. Дозвониться невозможно.
Что это: сбой или теперь для звонков в Telegram требуются какие-то настройки? Сталкивались ли вы с подобным? Как решить эту проблему и можно ли ее решить?
Этот вопрос весьма актуален сегодня.
Будем разбираться: почему перестали работать звонки в Telegram, и что с этим можно сделать.
А причин несколько:
- 1). Очень медленный интернет (или низкая скорость интернета). И где самая частая (главная) причина — блокировка мессенджера в этом регионе. И тут Вам придётся подключиться к Wi-Fi, либо — к мобильному интернету. Но звонки в Telegram не пройдут, если такие же проблемы (со скоростью интернета) имеются и у Вашего собеседника. Просто предложите ему перезагрузить своё устройство, и уже потом тоже воспользоваться Wi-Fi.
- 2). Блокировка в конкретно взятом государстве или стране. А в некоторых странах (таких, как: Китай, Иран, Пакистан, Индонезия, Оман, Саудовская Аравия) Telegram намеренно замедляется или даже блокируется. Блокировался Telegram, например, на территории России и в моём Казахстане. Но обойти запрет оказалось совсем не сложно, если использовать многочисленные VPN-сервисы, либо просто настроить Proxy для Telegram.
- 3). Но бывает и так, что абонент, отключив у себя функцию звонка, не хочет, чтобы Вы ему звонили (и таких очень много), или просто не может сейчас разговаривать. То есть, в такой ситуации (когда звонки в Telegram сбрасываются), можно предположить, что у Вашего собеседника нет желания/возможности общаться в данный момент.
- 4). Автоматически звонок в Telegram ещё может сбрасываться, когда у Вас (или Вашего собеседника) нет микрофона. Эта проблема тоже решается очень просто — подключением наушников (они имеют встроенный микрофон), а значит, и звонки в Telegram будут работать как обычно.

В мессенджере Telegram, как и в других подобных сервисах могут возникать сбои в работе, иногда сбрасываются звонки.
В работе Телеграм ещё стоит учитывать и то, что направление сигнала осуществляется "анонимно", через серверы Telegram. Это сделано для того, чтобы скрыть ваш IP.
Для того, чтобы сигнал был более устойчивым, можно изменить настройки.
Открываем настройки, нажав на три горизонтальные полоски в верхнем левом углу и выбрав Settings — Настройки. Открываем раздел конфиденциальность — Privacy and Security и выбираем звонки — Calls.
Здесь в графе Peer-to-Peer необходимо деактивируйть услугу, для чего переключатель переводим влево.
telegram зависает при обмене ключами exchanging encryption keys
Создать хеш-таблицу со случайными целыми ключами и удалить из него записи с чётными ключами
Помогите пожалуйста создать хеш-таблицу со случайными целыми ключами и удалить из него записи с.
Создать хеш-таблицу со случайными целыми ключами от -10 до 10 и удалить из нее записи с отрицательными ключами
Создать хеш-таблицу со случайными целыми ключами в диапазоне от –10 до 10 и удалить из него записи.
Ошибка при обмене данными с ядром при запуске компьютера
При запуске компьютера есет выдает ошибку при обмене даных с ядром и отключается.
Ошибка при обмене данными с ядром при запуске Eset Smart Security
Здравствуйте. При запуске антивируса вылетает сообщение "Ошибка при обмене данными с ядром", еще.
Нумерация при обмене
И так, настроили обмен между уже рабочей бухой, и чистой УНФ. Теперь документы будут делать в унф.
комп зависает намертво при работе с новым винчестером, после перезагрузки компа зависает при загрузке BIOS
купил новый винчестер. комп стал зависать намертво. при перезагрузке, зависает уже при загрузке на.
Ошибка при обмене УТ с Розницей
Ошибка при выгрузке данных для узла плана обмена ТипОбъекта = Регистр сведений набор записей.
Ошибка при обмене с WCF
Добрый времени суток! Есть следующая проблема! При подключении к сервису я получаю список.
Ошибки при обмене между УТ 10.3 и БП 2.0
Доброго времени суток, Прошу помочь со странной проблемой при выгрузке данных из УТ10.3 в БП2.0.
ошибка при обмене данных с ядром
зачастую, когда включаешь комп пишет, что винда работает некорректно, и в течении получаса не.
Прослушивается ли мессенджер Телеграмм
Telegram позиционируется как один из наиболее безопасных мессенджеров, который невозможно взломать, а данные пользователей надежно защищены с помощью передовых методов шифрования. На самом же деле сохранить персональную информацию можно только при соблюдении определенных правил. Для многих пользователей остается актуальным вопрос — прослушивается ли мессенджер Телеграмм представителями спецслужб или правоохранительных органов. Выясним, насколько надежная защиту данных обеспечивает этот сервис и можно ли будет ее обойти.
Как Telegram защищает данные пользователей
Универсальных способов, обеспечивающих полную анонимность и безопасность переписки, в данный момент не существует. В любом приложении есть уязвимые места, однако разработчики стремятся минимизировать потенциальные риски взлома, и сделать общение комфортным и максимально безопасным. Для этого используются различные методы защиты.
Разработчики Telegram Николай и Павел Дуровы создали и внедрили собственный криптографический протокол — MTProto. Особенность данного протокола в том, что он комбинирует несколько алгоритмов шифрования данных.
Основной технологический прием, который используется не только в Telegram, но и других мессенджерах (WhatsApp, Viber) — сквозное шифрование данных. Исходящее сообщение преобразуется в определенную кодовую комбинацию. На смартфоне получателя она затем декодируется. Ключи расшифровки хранятся на устройствах пользователей Telegram, а не на сервере, что позволяет исключить риск потери данных в случае каких–то взломов.
Также в Телеграме реализована возможность создания и ведения секретных чатов. Это переписка с повышенным уровнем безопасности, при котором данные об отправителе или получателе шифруется, и не передается между устройствами пользователей напрямую. В обычных чатах IP-адреса не шифруется, поэтому такую переписку можно назвать менее анонимной и защищенной.
Пользователи могут скрыть свой IP-адрес при совершении интернет-звонков. Это минимизирует вероятность того, что местоположение пользователей будет определено посторонними лицами.
Описанные методы защиты исключают вероятность того, что спецслужбы или хакеры могут читать переписку напрямую или контролировать аккаунт пользователя. Однако существуют обходные пути, которые позволяют получить доступ к секретным данным, даже несмотря на такие внедренные меры безопасности.
Могут ли прослушивать звонки в телеграмм
Прежде чем выяснить, могут ли спецслужбы читать и слушать пользователей, отметим что в отношении интернет-сервисов понятие «прослушка», в принципе, не используется, так как данная технология применима только к телефонным звонкам. Способов, которые позволяют переадресовать вызов и прослушивать его, в реальном времени нет.
В отношении Telegram и других мессенджеров применяется другое понятие — отслеживание сетевого трафика. С его помощью получить данные из переписки нельзя, однако теоретически можно вычислить местоположения отправителя и адресата.
ФСБ или другие спецслужбы РФ не могут просмотреть зашифрованную информацию, данные учетной записи, читать переписки или прослушать разговор, так как для этого необходимо иметь прямой доступ к аккаунту. Внедренные протоколы защиты исключают такую вероятность, а сам факт слежки за пользователями является прямым нарушением политики конфиденциальности Telegram.
Большая часть пользовательских данных не только подвергается шифрованию, но даже не хранится на серверах Телеграма. Поэтому вероятность перехватить сообщения или звонки исключена.
В каких случаях передают данные пользователей
Официально в России, как и других странах, Телеграм не передаёт властям пользовательские данные. Правда из этого правила существует исключение, о котором говорит отдельный пункт в политике конфиденциальности мессенджера.

Telegram может предоставить данные о пользователе, но только при наличии судебного постановления. Данное правило действует в отношении лиц, подозреваемых в ведении террористической деятельности. Даже несмотря на это, спецслужбами РФ звонки пользователей прослушиваться не могут, а так же у них нет доступа к перепискам. Телеграм может передавать данные о том, с кем и когда переписывался определенный пользователь, но доступ к самим текстам сообщений при этом никто не получит.
На сайте мессенджера, на котором размещена политика конфиденциальности, присутствует сообщение о том, что случаев, когда Telegram передавал данные о пользователях властям или спецслужбам на данный момент еще нет.
Как защитить персональные данные
Существует несколько способов, позволяющих повысить безопасность и исключить вероятность потери персональных данных. Это актуально как для тех, кто беспокоится о возможных взломах, так и для тех, кто думает, что Телеграмм все же прослушивается, а переписки читают спецслужбы и госорганы.
Нужно помнить о том, что универсальных методов защиты не существует. Даже если страница не взломана, а доступ к перепискам отсутствует, власти могут обратить внимание на гражданина по иным причинам. Чтобы обеспечить безопасность в интернете требуется комплексный подход. Ниже рассматриваются методы, которые позволят повысить безопасность Телеграм, но стоит подумать и о других интернет-сервисах, в особенности о браузерах, собирающие данные об истории посещений и веб-поиске.
Проверка активных сеансов
В Телеграмме всегда отслеживается активность пользователя. Если кто-либо посторонний получил доступ к учетной записи — это можно будет увидеть в списке подключенных устройств.
Найти сторонние подключения можно следующим способом:
- Открываем приложение, затем переходим в «Настройки».

- Далее переходим в подраздел «Устройства».

- Потом просматриваем список устройств, с которых выполнен вход в учетную запись. При необходимости закрываем посторонние сеансы.

Этот метод актуален в том случае, если вы заходили в Телеграм с чужого компьютера, смартфона, либо пользовались мессенджером, подключившись к общественной сети Wi-Fi. Любой обнаруженный подозрительный сеанс можно прервать мгновенно. После этого рекомендуется установить двухэтапную аутентификацию, чтобы исключить вероятность взлома.
Переписка в секретных чатах
В Telegram можно создать секретный чат. Это переписка, при которой используется вспомогательный алгоритм шифрования, а данные не сохраняются на серверах мессенджера, благодаря чему обеспечивается возможная защита данных от перехватов. Сообщения в этом чате удаляются автоматически. Собеседники могут скрыть свой номер телефона друг от друга. В диалоговом окне нельзя сделать скриншот — второй участник беседы сразу получит извещение об этом. Для создания секретного чата:
- Откройте приложение. В окне с переписками, внизу справа кликните значок в виде карандашика «Новое сообщение».

- После этого выберите строку «Создать секретный чат». Потребуется только выбрать пользователя, с которым вы хотите начать защищенную беседу. После создания секретный диалог будет находиться в том же самом разделе, где и все остальные чаты.

В мобильном приложении Telegram на iPhone значок Новое сообщение находится в верхнем углу экрана справа, выглядит в виде ручки и листка бумаги. Именно туда и нужно нажать, чтобы перейти к созданию защищенной беседы. После создания чата с нужным человеком, необходимо войти в настройки чата, потом кликнуть по троеточию «Еще» и выбрать вариант «Начать секретный чат» (рядом с ним отображается значок часиков).

Необходимо отметить, что секретный чат можно создать только в мобильном приложении. В версии для ПК, а также в Telegram Web этой функции нет.
Отключение peer-to-peer
Этот способ подойдет тем, кого беспокоят такие вопросы — можно ли прослушать Телеграмм и получится ли общаться с собеседником анонимно. По умолчанию peer-to-peer всегда включен. Обмен данными между пользователями в данном случае происходит напрямую. Во время звонков собеседники смогут отслеживать ваш IP-адрес. Хотя фактически несанкционированная слежка в Российской Федерации является уголовным преступлением, т.к. этими данными могут воспользоваться, чтобы вычислить текущее местоположение человека.
Чтобы отключить peer-to-peer:
- Входим в настройки приложения, затем открываем раздел «Конфиденциальность». После этого находим пункт «Звонки».

- Далее открываем раздел «peer-to-peer».

- Выбираем вариант «Не использовать». На экране отобразиться предупреждение о том, что качество видео и аудио при совершении звонков в таком случае может снизиться.

Отключив peer-to-peer, все звонки будут ретранслироваться через сервер Telegram. Это негативно влияет на качество связи, однако с высокой вероятностью защитит разговор от прослушивания и перехвата.
Запрет перехода при пересылке сообщений
Этот метод подойдет для тех, кто хочет повысить анонимность общения. Он не защищает от взлома, однако исключает вероятность того, что данные учетной записи смогут просматривать все желающие.
При пересылке чужого сообщения адресат видит отправителя, может перейти по ссылке и узнать, кто является первичным отправителем. Если вы хотите сделать общение анонимным, можно отключить активную ссылку на ваш профиль. Тогда, если ваше сообщение будет кому-либо перенаправлено, получатель не сможет увидеть ваш аккаунт.
Порядок действий будет следующим:
- Открываем настройки, далее переходим в раздел «Конфиденциальность». После этого ищем пункт «Пересылка сообщений».

- В поле «Кто может ссылаться на мой аккаунт» выбираем вариант «Никто».

После активации новых параметров, посторонние не смогут переходить по ссылке на ваш аккаунт. Это не всегда удобно, но позволяет сохранить анонимность общения, например, при переписке в общих чатах, при написании комментариев в группах и каналах.
Двухэтапная аутентификация
Если вы сомневаетесь, безопасен ли аккаунт Телеграмма и насколько велика вероятность его взлома — включите двукратную аутентификацию. Это обеспечит безопасность учетной записи в том случае, если кто-то попытается войти в нее с другого устройства.
Обычно при входе с нового устройства пользователю нужно ввести код. Он приходит в СМС на номер, с которого зарегистрирован аккаунт. Также сервис выдаёт пароль в приложении, где также можно подтвердить вход с нового устройства. При двукратной аутентификации, помимо пароля из СМС, для входа потребуется ввести еще один код. Его пользователь должен придумать самостоятельно при активации данной функции.
Чтобы включить защиту надо выполнить такие шаги:
- Входим в настройки конфиденциальности. Затем выбираем раздел «Двухэтапная аутентификация».

- Потом вводим пароль, который будет использован при входе. В следующем окне его нужно будет ввести повторно.

- При завершении на экране отобразиться окно с подтверждением. Предварительно Telegram предложит привязать аккаунт к электронной почте. Это поможет тогда, когда пользователь забудет пароль или утратит доступ к учетной записи. Без электронной почты возможности восстановить доступ нет.

Двухэтапную аутентификацию в любой момент можно отключить в мобильном приложении. Для этого достаточно ввести заданный ранее пароль. В результате он больше не будет запрашиваться при входе с нового устройства, а для активации учетной записи будет достаточно подтвердить, что вы являетесь владельцем привязанного к странице номера телефона.
Заключение
Могут ли прослушать Телеграмм — самый распространенный в сети вопрос у пользователей данного мессенджера. По официальным данным, мессенджер не прослушивается, а используемые протоколы безопасности исключают возможность отслеживания и взлома.
Тем не менее насколько безопасен Telegram во многом зависит от самих пользователей. Про помощи встроенных в приложение инструментов можно существенно увеличить уровень защиты и минимизировать риски, связанные со взломами или утратами личных данных.