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

Документація / 07

Експорт та перевірка

Поділіться підписаним записом, який може перевірити будь-хто інший.

Зберегти посиланняЕкспорт підписаного ZIP-файлуОдержувач перевіряє

Не знайомі з підписами та контрольними точками? Змініть зразок запису та подивіться, які перевірки його виявляють.

Хочете зберігати копію окремо від сервера-збирача? Перейдіть до налаштувань S3, функції Object Lock або верифікованого відновлення.

Збережіть надійне джерело інформації

Збережіть відбиток відкритого ключа робочого простору поза межами колектора. Під час збору даних зберігайте підписані контрольні точки в іншому місці або використовуйте незалежного свідка. Ці посилання дозволяють одержувачу перевірити ключ та межі попереднього журналу.

Завантажити підписаний ZIP-файл

Відкрийте «Експорт» і створіть підписаний ZIP-файл з доказами. Він містить журнал робочого простору та підписаний маніфест файлів. Фільтри панелі не обмежують експорт повного журналу: перегляньте матеріал перед тим, як поділитися ним.

Окремі файли HTML та CSV, які можна завантажити, зручні для читання та аналізу. Зберігайте підписаний ZIP-архів як перевірений оригінал; окремі файли HTML або CSV не мають самостійного підпису.

Перевірте за допомогою надійної копії TgWitness

У встановленому середовищі проекту замініть приклад відбитка та шляхи до файлів:

python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_PUBLIC_KEY_SHA256 --checkpoint retained-checkpoint.json

Коли обидва посилання проходять перевірку, у результаті відображаються key_pinned: true та checkpoint_checked: true. Зберігайте результат перевірки разом з оригінальним архівом. Збережена контрольна точка повинна знаходитися на межі експорту або перед нею.

Зрозуміти результат

  • Цілісність: записана історія та експортовані файли відповідають своїм цифровим підписам.
  • Попереднє зауваження: зовнішній контрольний пункт дозволяє порівняти експорт із раніше збереженим префіксом журналу.
  • Реалізація: контрольований тест «відправлення → редагування → видалення» перевіряє конкретні події на відповідність зафіксованим записам.

Наявність дійсного підпису не доводить, що кожна подія в Telegram відбулася, що джерело говорило правду або що годинник збирача даних був налаштований правильно.

Налаштування позасайтової копії в S3

У вашому робочому просторі відкрийте «Експорт» → «Зовнішня копія». Ця опціональна функція працює з AWS S3 та іншими сервісами, сумісними з S3. Вона копіює сегменти журналу, збережені фотографії та файли, контрольні точки з відповідями з часовими мітками, а також готові експортовані чати. Кожен об’єкт шифрується на колекторі за допомогою алгоритму AES-256-GCM перед завантаженням.

Онлайн-демо демонструє ті самі елементи керування, але з вимкненою функцією завантаження. Вводьте облікові дані для доступу до сховища лише у власному робочому просторі, що вже запущено.

Повна панель налаштувань поза сайтом: кінцева точка, регіон, сховище, ключі доступу, розклад, блокування об’єктів та управління ключами відновлення
Повна панель з розгорнутими розширеними налаштуваннями. Дані для входу до сховища не відображаються.
Налаштування зберігання в розділі «Експорт» → «Зовнішня копія»
ГалузьЩо ввести
Кінцева точкаURL-адреса сервісу зберігання даних без шляху до контейнера та облікових даних. Вигаданий приклад: https://s3.example.invalid.
РегіонРегіон, який вимагає ваш провайдер. За замовчуванням у додатку встановлено us-east-1.
BucketІснуючий контейнер, до якого ви маєте доступ. Вигаданий приклад: example-case-backup.
Папка у контейнеріПрефікс об’єкта; за замовчуванням — tgwitness. Додаток додає префікс, отриманий на основі відбитка ключа підпису цього робочого простору.
Ідентифікатор ключа доступу / Секретний ключ доступуВведіть обидва параметри доступу до сховища одночасно. Вони зберігаються у сховищі робочого простору. Під час подальшого збереження залиште обидва поля порожніми, щоб зберегти введену пару даних.
Адреси у форматі PathЗалежно від провайдера використовуйте endpoint/bucket, якщо функція увімкнена, або bucket.endpoint, якщо вона вимкнена.
Інтервал копіюванняВід 1 до 1 440 хвилин; за замовчуванням — 5 хвилин. Для створення запланованих копій програма має працювати.
Зберігання даних Object LockТермін зберігання та режим для контейнера, що підтримує Object Lock. Значення «нуль днів» залишає чинним стандартний термін зберігання контейнера.
  1. Введіть місце призначення та облікові дані. Під час підготовки залиште опцію «Зберегти копію поза сайтом» не відміченою, а потім виберіть «Зберегти копію поза сайтом».
  2. Виберіть «Перевірити з’єднання». Це завантажить зашифрований тестовий об’єкт і перевірить відповідь сховища.
  3. Виберіть «Завантажити ключ шифрування». Зберігайте цей файл окремо від колектора; він необхідний для відновлення даних.
  4. Увімкніть прапорець «Зберігати копію поза сайтом» і збережіть налаштування ще раз. Виберіть «Копіювати зараз» для ручного запуску або залиште розклад у дії.

Чого не робить Він не створює сховища даних. Заплановані завантаження припиняються, коли зупиняється робота програми.

Перевірка терміну зберігання та прогресу копіювання

У розділі «Додаткові параметри» виберіть термін зберігання та GOVERNANCE або COMPLIANCE, якщо ваш сховище підтримує функцію Object Lock. TgWitness зчитує режим зберігання та термін дії завантаженого об’єкта. Статус повідомляє про підтвердження, відсутність зберігання або невдачу перевірки; саме завантаження не є підтвердженням зберігання.

Панель відображає інформацію про останній прохід, кількість об’єктів, кількість переданих байтів, межі скопійованого журналу та будь-які помилки. Про відсутні або змінені локальні носії повідомляється, і під час наступного проходу виконується повторна спроба. Файли, контрольні точки та експорти в черзі, що знаходяться після цього носія, все ще можна скопіювати.

Завантаження здійснюється через маршрути Direct, SOCKS5 або HTTP робочого простору. Копіювання в S3 через MTProxy недоступне; програма не переходить на пряме з’єднання.

Чого не робить Це не зобов’язує провайдера застосовувати функцію Object Lock лише тому, що завантаження було прийнято.

Зберігайте ключ відновлення окремо

Завантажений файл JSON містить ключ дешифрування, налаштування призначення, префікс об’єкта робочого простору та відбиток ключа підпису. Він не містить облікових даних для доступу до S3: для відновлення потрібні окремі облікові дані з правом читання до контейнера.

Якщо ви зміните кінцеву точку, бакет або префікс папки, завантажте файл ключа ще раз, щоб налаштування місця призначення відповідали новим. Програма запустить нову копію локально збереженого журналу, файлів та контрольних точок у новому місці призначення. Готові експортовані чати, які вже були видалені з локальної черги завантаження, залишаються у попередньому місці призначення.

Чого не робить Без експортованого ключа копія не розшифровується. Дані для доступу до сховища не можуть замінити цей ключ.

Відновлення та перевірка на іншому комп’ютері

Використовуйте перевірену версію TgWitness, завантажений JSON-файл з ключем, облікові дані сховища з правом читання та порожній вихідний каталог. Замініть наведені нижче вигадані замісники облікових даних.

Windows PowerShell

$env:TGWITNESS_S3_ACCESS_KEY = 'YOUR_READ_ACCESS_KEY'
$env:TGWITNESS_S3_SECRET_KEY = 'YOUR_READ_SECRET_KEY'
python -m tgwitness.replica restore --key-file tgwitness-replica-key.json --out restored-evidence

Linux / macOS

export TGWITNESS_S3_ACCESS_KEY='YOUR_READ_ACCESS_KEY'
export TGWITNESS_S3_SECRET_KEY='YOUR_READ_SECRET_KEY'
python -m tgwitness.replica restore --key-file tgwitness-replica-key.json --out restored-evidence

Завантажені та розшифровані об’єкти залишаються у приватному тимчасовому сховищі, поки перевіряються весь журнал, збережені контрольні точки, а також хеші та розміри збережених медіафайлів. Небезпечні шляхи, конфліктуючі сегменти журналу та журнал, довжина якого менша за його контрольну точку, відхиляються. У разі невдалої перевірки відновлені файли не публікуються.

У разі успішного відновлення для матеріалів, доступних у копії, будуть отримані значення events.jsonl, media/, checkpoints/ та exports/. Збережіть результат команди у форматі JSON разом із відновленими матеріалами.

Чого не робить Він не відтворює спостереження, які ніколи не потрапили до журналу, і не замінює незалежно збережені контрольні точки чи свідків.