Как снять пароль с PDF
Снятие пароля работает в двух случаях. Первый: вы знаете пароль на открытие и вводите его — qpdf расшифровывает документ и отдаёт копию без защиты. Второй: на файле стоит только владельческий пароль, ограничивающий печать и копирование, — тогда поле пароля оставляют пустым, потому что пользовательский пароль у такого документа пуст по определению. Перед расшифровкой инструмент проверяет, зашифрован ли файл вообще.
Коротко о цифрах
- Предел файла
- 50 МБ
- Ограничение частоты
- 10 запросов за 10 минут с адреса
- Пустой пароль
- допустим — нужен для файлов только с правами
- Проверка до работы
- qpdf --show-encryption, незашифрованный отклоняется
- Подбор пароля
- не выполняется ни в каком виде
Два разных пароля — два разных исхода
Если PDF спрашивает пароль при открытии, ключ шифрования выведен из этого пароля. Без него содержимое остаётся набором нечитаемых байтов, и никакой инструмент — ни наш, ни чужой — не превратит его в текст. Введите пароль в форму, и qpdf снимет шифрование целиком: вернётся обычный документ, который открывается без вопросов.
Если PDF открывается сам, но не даёт печатать или выделять текст, шифрование на нём тоже есть, только пользовательский пароль у файла пустой. Именно поэтому пустое поле — рабочий ввод, а не ошибка: qpdf открывает документ пустым паролем и записывает расшифрованную копию без флагов прав.
Порядок работы
- Загрузите PDF размером до 50 МБ. Файл уходит на сервер: qpdf в браузере не работает.
- Введите пароль на открытие, если он вам известен. Если документ открывается без пароля, оставьте поле пустым.
- Инструмент сначала запускает пробу шифрования и откажется работать с незашифрованным файлом.
- Дождитесь результата и скачайте расшифрованную копию — исходный файл на сервере не хранится.
- Проверьте, что печать и копирование в результате разрешены: вместе с шифрованием снимаются и флаги прав.
Что означают сообщения об ошибках
- «Этот PDF не защищён паролем» — проба не нашла шифрования, снимать нечего.
- «Неверный пароль» — qpdf ответил invalid password. Классификация идёт по тексту ответа, а не по коду выхода: код 2 qpdf возвращает на любую ошибку, включая повреждённый файл.
- «Файл повреждён» — в ответе есть damaged или unable to find trailer. Такому документу нужен ремонт структуры, а не расшифровка.
- «Файл не является PDF» — проверка сигнатуры или сам qpdf не увидели PDF-заголовка.
- Предупреждения qpdf при удачной расшифровке ошибкой не считаются: запуск идёт с --warning-exit-0.
Частые вопросы
Снимете ли вы пароль, если я его не знаю?
Нет. Пароль на открытие снимается только вводом этого пароля, потому что из него выводится ключ шифрования. Перебора у нас нет, и обещать доступ к чужому зашифрованному документу было бы обманом.
Почему инструмент написал, что файл не защищён?
Значит, проба qpdf не нашла в документе шифрования. Такое бывает, когда текст не выделяется по другой причине: страницы отсканированы картинками либо интерактивный слой был сплющен в содержимое страницы.
Почему пустое поле пароля иногда срабатывает?
Потому что у документа с одними лишь ограничениями прав пользовательский пароль пустой по стандарту. Файл открывается у всех, а секрет стоит только за флагами печати и копирования, и на расшифровку он не влияет.
Останутся ли после снятия пароля запреты на печать?
Нет. Расшифровка убирает шифрование целиком, а вместе с ним и таблицу прав, поэтому в полученной копии печать, копирование текста и изменение снова разрешены.