TgWitness / Документация

Что проверено →

Справочник / Сбор

Секретные чаты Telegram: состояние реализации

Ознакомьтесь с отдельной реализацией Секретного чата, опробуйте вымышленный интерфейс и проанализируйте неисправленные дефекты.

TgWitness / Документация

Состояние на 6 ноября 2026 года: отдельная реализация Секретного чата находится в разработке. Она не была включена в опубликованную ветку main на версии 3d23e52b647b. Обычный сборщик и экспорт Takeout не собирают данные Секретных чатов. Интерактивный сценарий на веб-сайте демонстрирует интерфейс с вымышленными данными; он не поддерживает обмен сообщениями в Telegram.

Где находится реализация#

Коммит 0e60f88e добавил Sources → Pseudo-secret в локальную ветку разработки fix/panel-routes-sessions. Проверенный снимок — bb8788fb685c. Его реализация включает tgwitness/secret_chats.py, маршруты приложения, tgwitness/static/views/secret-chats.js и специальные тесты.

Дополнительный компонент secret-chats в этой ветке использует KiaroSama/Telethon-Secret-Chat, закреплённый на d87bf037b90060383c7b704d8a06ebb98c621c6f. Библиотека реализует протокол сквозного шифрования чатов Telegram на основе существующей авторизации Telethon для учётной записи. Установка только этой библиотеки не добавляет недостающую интеграцию в main.

Что делает интерфейс разработчика#

Действие Зафиксированное поведение
Начать чат по имени пользователя или ID пользователя Отправьте запрос; другой участник должен его принять.
Принять входящий запрос TgWitness становится конечной точкой приема для данного чата. Автоматическое принятие — это отдельная настройка, по умолчанию отключенная.
Отправить или получить сообщение Добавить исходящую или входящую запись secret_chat.message и отобразить её в цепочке сообщений.
Получить вложение Расшифруйте его, сохраните его байты по SHA-256 и запишите secret_chat.file.
Получить уведомление с таймером или уведомление об удалении Зафиксировать уведомление и сохранить ранее зафиксированное содержимое.
Просмотрите переписку Отобразить сообщения, файлы, уведомления и визуализацию ключей. Открытая вкладка обновляется каждые четыре секунды.

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

Охватываются только чаты, созданные или принятые в рамках данной сессии TgWitness. Существующие секретные чаты на телефоне остаются на этом устройстве. Импорт сессии не предоставляет их отдельных ключей шифрования. Ключевые материалы и счетчики секретных чатов хранятся в хранилище рабочей области; сохраненные сообщения и расшифрованные файлы подчиняются стандартным мерам защиты хранилища рабочей области.

Демонстрация на веб-сайте#

Сценарий «Try Secret Chat» на веб-сайте открывает вымышленный разговор. Он позволяет читателю инициировать запрос, смоделировать его принятие, отправить пример сообщения, получить запрограммированный ответ и файл, а также проверить таймер и уведомление об удалении. Входящий запрос также можно принять. Элементы управления явно обозначают смоделированные действия собеседника.

Данный сценарий работает в памяти браузера. При сбросе или перезагрузке он очищается. Он не входит в систему, не связывается с Telegram, не создаёт реальных ключей шифрования и не изменяет загруженные подписанные образцы. Отображаемые им сообщения не являются подписанными доказательствами. Сценарий демонстрирует предполагаемое взаимодействие; он не подтверждает, что реализация разработки готова к использованию.

Проверки и неисправленные дефекты#

Пять существующих тестов охватывают сохранность зашифрованного ключа, жизненный цикл и записи сообщений, политику принятия входящих сообщений, отправку в режиме только для чтения и экспорт вложений. Они прошли проверку на закреплённой библиотеке во время обзора 6 ноября. Три дополнительные синтетические проверки воспроизвели дефекты в том же снэпшоте:

Выводы Последствия
Закрытие обходит read_only Путь закрытия может выполнять удаленное действие, когда взаимодействия должны быть заблокированы.
Поиск дубликатов осуществляется только среди недавних записей 500 Старая запись воспроизведения может создать дубликат после перезапуска.
Неудачная загрузка вложения приводит к удалению соответствующей записи в списке ожидающих Временный сбой приводит к потере задания повторной попытки.

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