Обзор средств и способов защиты PDF-документов
20.06.2014
О формате PDF
PDF (Portable Document Format) – стандартизированный формат для хранения и распространения текстовых и графических документов. В отличие от других популярных форматов (.txt, .rtf, .doc и прочих), PDF имеет ряд важных преимуществ.
В первую очередь – это самодостаточный формат, и он будет одинаково отображаться на различных устройствах. Вид документа не зависит от наличия на компьютере необходимых шрифтов или иных особенностей. Это особенно важно для подготовки документов для последующей печати – на бумаге они будут выглядеть точно так же, как на экране.
Это и ряд других полезных особенностей формата (компактный размер, возможность масштабирования и прочее) сделали формат де-факто стандартом для обмена и хранения документов самого широкого профиля – книг и полноцветных журналов, форм и отчётов.
Популярность PDF-формата в бизнесе ставит перед ним важное требование – наличие технологии контроля доступа. При этом защита требуется PDF-документу независимо от его назначения. Он может выступать как товар и в виде электронной книги или маркетингового отчета распространяться среди широких масс пользователей, или носить гриф коммерческой тайны с ограниченным использованием внутри компании.
Общий подход к защите
Встроенные средства безопасности PDF достаточно просты и поддерживают следующие возможности:
- Защита PDF-документа с помощью пароля.
- Установка ограничений на копирование содержимого или распечатывание документа (с возможностью установки пароля для отмены ограничений).
- Цифровая подпись PDF-документа для защиты от его неавторизованного изменения.
Однако эти методы имеют ряд существенных недостатков. Во-первых, применяемые технологии открыто описаны, и существует целый ряд программ (как платных, так и бесплатных), которые позволяют удалить с файла ограничения буквально за пару кликов мышью. Второй недостаток встроенных средств защиты – они не подходят для организации DRM-схем и контроля за фактическим использованием PDF-файла.
Там, где не справляются стандартные средства, на сцену выходят специализированные сторонние решения. Используемые в них подходы также различаются. Можно выделить три основных направления по улучшению защитных механизмов формата:
Нестандартное использование имеющихся средств самого формата PDF.
Хотя формат PDF в первую очередь предназначен для передачи статической текстовой и графической информации, он поддерживает и ряд интерактивных возможностей. Одна из них – исполнение пользовательских скриптов на языке javascript. С их помощью можно организовать дополнительный слой защиты файла, причём для этого не потребуется никаких сторонних средств. Хотя данный способ весьма элегантен с технической точки зрения, так как он не зависит от платформы, на которой открывается документ, тем не менее, существует ряд ограничений. Во многих случаях поддержка javascript в программе-просмотрщике может быть отключена по соображениям безопасности. В последнее время участились случаи, когда javascript в pdf-файлах используется в злонамеренных целях – например, для заражения компьютера вирусами. Другой недостаток – слабая защищённость самого кода защиты и ограниченность её функционала. Javascript – высокоуровневый скриптовый язык, программы на котором представляют собой обычный текст. Несмотря на возможные ухищрения по защите кода от анализа, например, обфускацию, обычно довольно просто разобраться в принципе работы программы и таким образом обойти защитные механизмы. Функционал, который можно реализовать на таком языке, также зачастую весьма ограничен.
Использование механизма «плагинов» (расширений) для существующих программ-просмотрщиков.
Стандартный Adobe PDF Reader поддерживает технологию расширений – его функционал можно дополнить за счёт внешних модулей. С помощью такого модуля можно реализовать дополнительные механизмы по защите PDF-файлов. При открытии документа плагин выполняет необходимые проверки и реализует необходимые ограничения или иные функции. Хотя такой механизм уже более гибок, чем первый метод, недостатков у него тоже немало. В первую очередь, модуль «привязан» к конкретной программе-просмотрщику и платформам, на которых она существует. Таким образом, для поддержки разных просмотрщиков подобный плагин придётся разрабатывать отдельно для каждого просмотрщика. Причём на ряде платформ (например, на мобильных устройствах) подобная технология не поддерживается вовсе. Хотя плагин можно хорошо защитить от изучения и модификации, остаётся главное слабое звено – сама программа-просмотрщик. Обычно она никак не защищена, и это позволяет перехватить ценную информацию за пределами плагина.
Наконец, третий способ – реализация собственного просмотрщика для PDF документа со всеми необходимыми защитными механизмами.
Очевидно, что это наиболее затратный способ. Но он же даёт и максимальный контроль над документом и безопасностью. В некоторых случаях – например, при использовании на мобильных платформах, этот вариант единственный из доступных вариантов. При этом на плечи разработчиков ложится не только задача обеспечить защищённость документа, но и предоставить комфортную среду для его просмотра и использования.
|
Защита средствами PDF |
Защита с помощью плагина |
Собственный просмотрщик |
Защищённость |
Низкая |
Средняя |
Высокая |
Функциональность |
Ограниченная |
Средняя |
Без ограничений |
Совместимость |
Средняя |
Низкая |
Без ограничений |
Сложность реализации |
Средняя |
Средняя |
Высокая |
Компания StarForce использует третий способ – разработка собственной программы-просмотрщика для обеспечения высокой степени защиты и удобства использования. Защита StarForce основывается на трех базовых компонентах:
Преобразование файла в формат, который нельзя открыть стандартными программными средствами. Поэтому после защиты файл PDF можно выкладывать на сайт в свободный доступ или передавать любым способом и на любом носителе.
Предоставление авторизированному читателю серийного номера для активации, во время которой происходит привязка защищенного файла PDF к конкретному пользовательскому устройству, что предотвращает возможность копирования и несанкционированного распространения защищенного файла.
Контроль активаций через персональный кабинет сервиса.
В настоящий момент программа-просмотрщик предоставляется пользователю в одной папке с защищенным документом PDF. Однако при необходимости, пользователь может отказаться от этого, используя для открытия файла полученный ранее вариант программы. Подробнее об этом можно узнать в FAQ.