«Каждый раз, когда мы подписываем документ в PDF, мы видим конечный результат — текст на виртуальной странице. Но на самом деле там может лежать целая база данных — журналы редакций, комментарии, следы удалённых строк, из которых можно восстановить историю переговоров, финансовые поправки и внутреннюю оценку контрагента. И всё это остаётся в документе после подписания»
.
PDF, это не документ, а файловая система с историей
Формат PDF изначально создавался не как финальная бумажная копия, а как цифровой контейнер для полиграфии. Его внутренняя структура ближе к файловой системе, чем к текстовому файлу. Помимо видимых страниц, внутри существует так называемый Cross-Reference Table — таблица, связывающая все объекты в файле: шрифты, изображения, аннотации, формы. Удаление текста из видимой области часто не приводит к его физическому удалению из этой таблицы. Объект просто помечается как свободный, но его данные остаются в теле файла до тех пор, пока не будет выполнена полная оптимизация. Большинство редакторов по умолчанию её не проводят.
Акт работ как хроника переговоров
Рассмотрим ситуацию из заголовка. Договор, это итоговый документ, отшлифованный юристами. Его конечная версия чиста. Акт же рождается в процессе: его черновик последовательно редактируется в ходе согласования технических деталей, стоимости и сроков. Каждый участник вносит правки, оставляя комментарии, используя инструменты исправлений. Например, технический директор может вставить комментарий к пункту о серверах: «Серверная не готова, перенести на 2 недели, иначе штрафы». Финансист выделит желтым маркером сумму и напишет во всплывающей заметке: «Согласовано с гендиром устно, закладываем +15%». Эти метаданные сохраняются как аннотации — отдельные объекты внутри PDF.
Что остаётся в акте и как это увидеть
Типичный PDF-акт после согласований содержит слои информации, невидимые при обычном просмотре:
- История изменений (Incremental Updates). Некоторые программы сохраняют каждую редакцию документа как отдельный слой, добавляя его в конец файла. Физически в одном файле могут храниться все версии документа от первой до последней.
- Удалённый текст и объекты. При замене «200 000 руб.» на «250 000 руб.» старые цифры часто не стираются, а просто перекрываются новым белым прямоугольником или перемещаются за пределы видимой области страницы.
- Комментарии и аннотации. Всё, что добавлено через инструменты Notes, Text Box, Sticky Notes, хранится в явном виде и может быть извлечено специализированными утилитами или скриптами.
- Метаданные формы (Form Fields). Если акт заполнялся через интерактивные поля, то в данных формы может сохраняться не только конечное, но и предыдущее введенное значение.
Техническое извлечение скрытых данных
Для анализа нужны не обычные просмотрщики, а низкоуровневые инструменты. Процесс выглядит так:
- Анализ структуры. Используется утилита вроде
pdftkили библиотекаPyPDF2/pdfplumberдля Python, чтобы выгрузить список всех объектов.
pdftk document.pdf dump_data output doc_info.txt - Поиск аннотаций. Аннотации хранятся в объектах с типом
/Annot. Их можно извлечь командой:
mutool show document.pdf annots - Реконструкция удалённого контента. Объекты, на которые нет прямых ссылок из текущей таблицы ссылок (orphaned objects), часто являются удалённым контентом. Их дамп можно посмотреть через hex-редактор или парсер.
Написание простого скрипта на Python с использованием pdfminer или pikepdf позволяет автоматически извлекать весь текст, включая аннотации и скрытые слои, в один файл для последующего анализа.
Юридические и регуляторные риски
С точки зрения 152-ФЗ и регуляторных требований ФСТЭК такая ситуация создаёт несколько угроз:
- Несанкционированное раскрытие информации. Скрытые комментарии могут содержать персональные данные, коммерческую тайну или служебную информацию, не предназначенную для контрагента. Передача такого PDF-файла равносильствует утечке.
- Нарушение принципа минимальности данных. Требования регуляторов предполагают, что передаются только необходимые для цели данные. «Исторический» PDF нарушает этот принцип.
- Проблемы с доказательной силой документа. В случае спора извлечённая скрытая история правок может быть использована для трактовки намерений сторон не в их пользу.
Как очистить PDF перед отправкой
Технически грамотная подготовка документа включает не только визуальный осмотр. Необходимо:
- Использовать «Флэттенинг» (Flattening). Эта функция, доступная в Adobe Acrobat Pro и аналогах, преобразует все аннотации, комментарии и слои в обычный растровый или векторный графический слой. После этого извлечь текст комментариев невозможно. В интерфейсе это часто называется «Объединить аннотации с документом».
- Выполнить полную оптимизацию («Сохранить как» заново). Простое сохранение в большинстве редакторов не очищает файл. Нужно использовать функцию «Сохранить как» (Save As) или «Оптимизировать PDF» (Optimize PDF) с настройкой на удаление неиспользуемых объектов и сжатие изображений. Это пересобирает файл, отбрасывая «мусорные» объекты.
- Проверять через анализ. После очистки стоит проверить файл упомянутыми утилитами (
mutool,pdftk), чтобы убедиться в отсутствии аннотаций и посторонних объектов.
Превентивные меры: политика работы с документами
Чтобы избегать подобных ситуаций системно, в организации стоит внедрить простые правила:
- Финальная конвертация в чистый PDF. Установить, что любой исходящий документ, особенно акты и допсоглашения, проходит этап «выпрямления» (flattening) в утверждённом инструменте перед подписанием и отправкой.
- Использование формальных средств согласования. Вместо обмена комментариями внутри черновика PDF использовать системы электронного документооборота, которые ведут историю отдельно от итогового файла, или специальные платформы для согласования. Итоговый документ в таких системах генерируется «с нуля».
- Проверка входящих документов. Критически важные документы от контрагентов также стоит проверять на наличие скрытых слоёв и аннотаций перед подписанием. Это элемент due diligence.
PDF-файл, это не просто текст. Это снимок всего рабочего процесса. Игнорирование его внутренней структуры приводит к утечке данных, которая формально происходит на законных основаниях — через подписание и отправку акта. Понимание этого превращает техническую особенность формата из угрозы в управляемый параметр.