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

Canonical page: https://phishdestroy.github.io/TgWitness/ru/docs/reference/secret-chats/

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

[Project context and measured scale](https://phishdestroy.github.io/TgWitness/ru/docs/reference/overview/)

[Documentation index](https://phishdestroy.github.io/TgWitness/ru/llms.txt)

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

[TgWitness](https://github.com/phishdestroy/TgWitness/blob/main/README.md) / [Документация](https://github.com/phishdestroy/TgWitness/blob/main/docs/README.md)

**Состояние на 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](https://github.com/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; она не повторяла реальный процесс установления соединения и не подтверждала пригодность для развертывания в производственной среде.
