Определить факт модификации текстового содержимого PDF-файла после его создания/подписания.
Причины:
1. Редактирование через PDF-редакторы (Adobe Acrobat, Foxit) без сохранения истории изменений.
2. Вставка/удаление объектов (текстовых блоков, слоев) в редакторах.
3. Пересохранение файла с другого источника (скриншот → OCR → новый PDF).
Решение (методы проверки):
1. Анализ метаданных (PDF Metadata) — проверка дат создания/изменения PDF документа
Команда (exiftool):
bash
exiftool -pdf:CreateDate -pdf:ModDate document.pdfЕсли `ModDate` позже `CreateDate` — есть признаки редактирования после создания.
Дополнительно: проверьте `Producer` (например, «Adobe Acrobat Pro DC» vs «Microsoft Word» — указывает на возможную конвертацию).
2. Вычислительный анализ (hash-сверка) — как выявить подмену текста в PDF-файле
Если есть оригинал:
bash
sha256sum original.pdf modified.pdfНесовпадение хэшей подтверждает изменение содержимого PDF после создания.
Лонг-тейл: эта техника является базовым методом для определения факта модификации содержания PDF-документа.
3. Визуальное сравнение структуры (simplediff) — обнаружение скрытых изменений в PDF документах
- Откройте оба файла в текстовом редакторе (просмотр сырого PDF).
- Сравните объекты `obj` и `stream` (потоки сжатого содержимого).
Команда (pdftotext + diff):
bash
pdftotext original.pdf orig.txt
pdftotext suspect.pdf susp.txt
diff -u orig.txt susp.txt | lessЕсли вывод показывает различия в текстовых блоках — текст меняли.
4. Проверка цифровой подписи (PDF Signatures) — установление, производились ли правки в PDF после подписания
- В Adobe: «Панель подписей» → «Свойства подписи».
Если подпись «Действительна», но дата валидации раньше `ModDate` — подпись могла быть добавлена после изменений (некорректное заверение).
Команда (pdftk):
bash
pdftk document.pdf dump_data | grep -i moddate5. Инструменты судебной экспертизы (ForensicAnvil.ru рекомендует)
- pdfid.py — выявление скрытых объектов и кода (JavaScript, OpenAction).
- peepdf — анализ на наличие ghost-редакций (скрытые revision при инкрементальном сохранении).
Команда (peepdf):
bash
peepdf -i document.pdfПокажет все Revision PDF — если их >1, а вы не сохраняли документ несколько раз, это признак изменения текста в PDF без изменения видимой версии.
6. Проверка шрифтов и кодировки
Если текст изменяли, шрифт мог подмениться (например, была Times New Roman → стала Arial).
Команда (pdffonts):
bash
pdffonts document.pdfСравните список со стандартным набором для оригинального файла (если есть). Расхождение — косвенный признак.
Важно:
- Все методы легальны при работе с собственными или открытыми файлами.
- Для судебной экспертизы — используйте только контрольные суммы и сертифицированные инструменты (напр., EnCase, FTK).
- При работе с чужим PDF может потребоваться согласие владельца (ст. 138.1 УК РФ — незаконный доступ к охраняемой информации).