← Назад к руководствам

Guide PDFUnlock

Шифрование PDF простыми словами: RC4, AES-128, AES-256

Техническое, но доступное объяснение того, как работает шифрование PDF — от устаревшего RC4-40 до современного AES-256. Поймите, почему одни PDF легко взломать, а другие — почти невозможно.

· Команда PDFUnlock

шифрованиетехническийруководство

Каждый зашифрованный PDF использует один из четырёх алгоритмов шифрования, и алгоритм определяет почти всё в том, можно ли восстановить пароль. Это руководство объясняет каждый из них простым языком, с достаточным количеством технических деталей, чтобы понять, почему 25-летний PDF тривиально взламывается, а современный может быть невзламываемым.

Если вы просто хотите узнать, какое шифрование использует ваш PDF, загрузите его на PDFUnlock — анализ бесплатный и мгновенный.

Как работает шифрование PDF на высоком уровне

Когда вы устанавливаете пароль на PDF, приложение (обычно Adobe Acrobat) не просто «блокирует» файл. Оно преобразует всё содержимое документа с помощью математического шифра. Выбранный вами пароль становится ключом, обращающим это преобразование.

Спецификация PDF определяет словарь шифрования, хранящийся в заголовке файла. Этот словарь содержит идентификатор алгоритма, длину ключа, флаги разрешений и набор проверочных хэшей. Когда вы вводите пароль для открытия файла, программа PDF хэширует ваш ввод с использованием параметров из этого словаря и проверяет, совпадает ли результат с сохранённым хэшем. Если совпадает, программа выводит ключ дешифрования и расшифровывает документ.

Именно поэтому инструментам восстановления паролей не нужен полный PDF — им нужен только словарь шифрования (несколько сотен байт). Хэш, извлечённый из этого словаря, и есть то, против чего работают взломщики, такие как Hashcat.

RC4-40: устаревший шифр (Acrobat 2-4)

RC4-40 был первым алгоритмом шифрования, использовавшимся в файлах PDF, представленным в середине 1990-х. «40» относится к длине ключа: 40 бит.

Почему он слабый: 40-битный ключ означает около 1,1 триллиона возможных ключей. Звучит много, но современный GPU может тестировать более 20 миллиардов ключей в секунду. Всё пространство ключей можно исчерпать менее чем за минуту. Это означает, что любой PDF с RC4-40 может быть взломан независимо от сложности пароля — даже случайный 50-символьный пароль не выдержит, потому что эффективная безопасность ограничена 40-битным ключом, а не длиной пароля.

Как идентифицировать: PDF, созданные в Acrobat 2, 3 или 4 (примерно 1996-2001), по умолчанию используют RC4-40. Словарь шифрования показывает /V 1 и /Length 40. PDFUnlock сообщает о таких файлах как «RC4-40» с зелёным значком, указывающим на почти гарантированное восстановление.

Время восстановления: секунды или минуты. Показатель успеха фактически 100%.

RC4-128: расширенный ключ (Acrobat 5-8)

Acrobat 5 (выпущен в 2001) повысил длину ключа до 128 бит, сохранив потоковый шифр RC4. Пространство ключей выросло с 2^40 до 2^128 — числа настолько большого, что исчерпывающий поиск невозможен.

Почему он всё ещё уязвим: Хотя пространство ключей нельзя перебрать полностью, пароли, генерирующие эти ключи, выбираются человеком. Большинство людей используют словарные слова, имена, даты и предсказуемые шаблоны. Словарная атака, тестирующая 14 миллионов паролей из списка rockyou.txt — плюс распространённые правила, такие как добавление цифр, заглавных букв и замена символов — охватывает подавляющее большинство реальных паролей.

Скорость взлома: Хэширование RC4-128 относительно быстрое. NVIDIA L4 (наш производственный GPU) тестирует около 250-350 миллионов кандидатов в секунду против PDF с RC4-128 — примерно 1 миллиард кандидатов в час. Словарная атака с мутациями правил завершается за минуты для распространённых шаблонов.

Показатель успеха в PDFUnlock: ~45% на уровне Стандартный (1ч), ~65% на Глубоком, ~75% на Максимуме. Действительно случайные пароли длиннее 10 символов обычно безопасны.

AES-128: современный шифр (Acrobat 9)

Adobe Acrobat 9 (2008) заменил RC4 на AES (Advanced Encryption Standard) с 128-битными ключами. AES — блочный шифр, принципиально отличающийся от потокового RC4, и считается криптографически надёжным по современным меркам.

Что изменилось для взлома: Удивительно, но реализация AES-128 в hashcat на современных GPU NVIDIA фактически БЫСТРЕЕ, чем реализация RC4-128 — около 1,3-1,8 миллиарда кандидатов в секунду на L4. Это связано с тем, что AES имеет аппаратное ускорение (AES-NI на процессоре, выделенные тензорные блоки на GPU), а RC4 — нет.

Функция получения ключа из пароля имеет значение: Acrobat 9 использует более сложную схему получения ключа (на основе MD5 с 50 раундами RC4 для проверки пароля). Это медленнее на кандидата, чем чистый AES, но всё же намного быстрее современных функций хэширования паролей, таких как bcrypt или Argon2.

Показатель успеха в PDFUnlock: ~45% на уровне Стандартный (1ч), ~65% на Глубоком, ~75% на Максимуме. Словарные атаки остаются эффективными, потому что люди по-прежнему выбирают слабые пароли.

AES-256: максимальная безопасность (Acrobat 10+)

Acrobat X (2010) и все последующие версии используют AES-256 — самый сильный вариант в спецификации PDF. Получение ключа также значительно изменилось: Acrobat X использует SHA-256 с итеративным хэшированием, а Acrobat XI/DC ввёл ещё более затратную схему получения ключа.

Почему AES-256 действительно сложен: Acrobat X+ использует AES-256 с R=6 (шесть итеративных раундов SHA-256 для получения ключа). На NVIDIA L4 это ограничивает скорость взлома примерно 15 000-18 000 кандидатов в секунду — примерно в 20 000 раз медленнее, чем RC4-128. В 1-часовом бюджете мы можем протестировать только ~50 миллионов кандидатов против AES-256 vs ~1 миллиард против RC4-128.

Математика не лжёт: При 15 кХэш/с проверка полного словаря rockyou.txt из 14 миллионов слов занимает около 16 минут. Добавление распространённых правил мутаций (умножающих пространство поиска в 1000-10000 раз) увеличивает время до дней или недель. Полный перебор всех возможных 8-символьных паролей занял бы более 200 лет на одном GPU.

Показатель успеха в PDFUnlock: ~20% на уровне Стандартный, ~30% на Глубоком, ~38% на Максимуме. Восстановить можно только пароли, появляющиеся в распространённых словарях или использующие очень предсказуемые шаблоны. Действительно случайные пароли из 12+ символов практически невосстановимы с текущими технологиями.

Как проверить тип шифрования вашего PDF

Не нужно быть техническим экспертом, чтобы определить, какое шифрование использует ваш PDF. Вот несколько методов:

PDFUnlock (самый простой): Загрузите файл на pdfunlock.app. Страница анализа показывает точный тип шифрования, длину ключа и оценочный показатель успеха восстановления — всё бесплатно.

Adobe Acrobat Reader: Откройте PDF (если можете), перейдите в Файл > Свойства > Безопасность. Поле «Метод безопасности» показывает уровень шифрования.

Командная строка (qpdf): Выполните qpdf --show-encryption yourfile.pdf. Это отображает алгоритм, длину ключа и все флаги разрешений.

Что это значит для восстановления пароля

Тип шифрования определяет, является ли восстановление вероятным, возможным, но неопределённым, или практически невозможным:

ШифрованиеДлина ключаСкорость (GPU L4)СтандартныйГлубокийМаксимум
RC4-4040-бит~2 ГХэш/с~100%~100%~100%
RC4-128128-бит~300 МХэш/с~45%~65%~75%
AES-128128-бит~1,5 ГХэш/с~45%~65%~75%
AES-256 R=6256-бит~15 кХэш/с~20%~30%~38%

Самый важный вывод: тип шифрования имеет гораздо большее значение, чем длина пароля для возможности восстановления. PDF с RC4-40 и 30-символьным паролем легче взломать, чем PDF с AES-256 и 6-символьным паролем, потому что пространство ключей RC4-40 достаточно мало для исчерпывающего поиска.

Заключение

Шифрование PDF претерпело значительные изменения за 30 лет. Если ваш заблокированный PDF старый (создан до 2008), восстановление весьма вероятно. Если он использует современный AES-256, успех зависит исключительно от силы пароля. Первый шаг — всегда проверить, с чем вы имеете дело — загрузите ваш PDF на PDFUnlock для бесплатного мгновенного анализа.

Разблокируйте PDF за следующие 60 секунд

Бесплатно для паролей владельца. Платите только если найдём — для паролей на открытие. Без аккаунта. Без карты. Только файл и результат.