Шифрування проти захисту паролем: що насправді роблять Protect і Unlock
Захист паролем — це шифрування з паролем відкриття. Protect додає його; Unlock знімає, коли ви його знаєте. Жоден не відновлює забутий пароль.

Люди кажуть «захистити PDF паролем» і «зашифрувати PDF», ніби це різні продукти. У форматі PDF це механізми однієї родини: файл несе словник /Encrypt, і переглядачі потребують пароля (або рівнозначних даних), перш ніж віддати вам вміст сторінок у відкритому вигляді.
Що насправді означає «захистити паролем»
Захищений PDF — це не просто блокування інтерфейсу в одному застосунку. Сумісні зі стандартом читачі відмовляються відкривати документ, доки не отримають правильний пароль відкриття. Це шифрування вмісту файлу з ключем, для якого потрібен саме цей пароль.
Захистити PDF (POST /api/v1/security/add-password) приймає вибраний вами пароль і повертає зашифрований файл, який вимагає цей пароль при відкритті. Форма порталу просить одне поле пароля. Сервер шифрує через qpdf (--encrypt), використовуючи це значення як пароль користувача (відкриття); якщо окремий пароль власника до API не передано, той самий рядок використовується для ролі власника. Типова довжина ключа — 256 бітів. Інструмент не зберігає ваш пароль після завершення обробки. Якщо ви його загубите, отриманий файл лишиться замкненим.
Пароль користувача проти пароля власника
Історично шифрування PDF розрізняє дві ролі:
- Пароль користувача (відкриття): потрібен, щоб узагалі відкрити й переглянути документ.
- Пароль власника (дозволи): часто використовується, щоб задати обмеження на друк чи зміни, водночас дозволяючи комусь відкрити файл із паролем користувача (або з порожнім паролем відкриття, залежно від того, як файл створили).
Це концепції формату, а не маркетингові ярлики. Багато повсякденних процесів «замкнути цей PDF» задають лише пароль відкриття. Обмеження друку чи редагування без блокування відкриття — це історія дозволів, яка використовує роль власника; її легко сплутати з «файл не відкривається».
На PDF123 форма Protect просить один пароль і трактує його як пароль відкриття, потрібний для перегляду файлу. Розблокування потребує того самого відомого пароля, щоб розшифрувати. Досвідченіші клієнти API можуть передавати ownerPassword, keyLength, canPrint і canModify в add-password; форма в браузері цих важелів не показує.
Що робить розблокування (а що ні)
Зняти пароль (POST /api/v1/security/remove-password) знімає наявне шифрування паролем, коли ви надаєте правильний поточний пароль. Сторінки, шрифти й верстка лишаються тими самими; зникає лише вимога шифрування.
Він не відновлює, не вгадує й не зламує забутий пароль. Якщо ви не знаєте пароля, розблокування його не вигадає. Відновлення також не знімає шифрування — якщо Отримати інформацію показує Encrypted: true, спершу розблокуйте, потім редагуйте.
Коли що використовувати
| Мета | Інструмент |
|---|---|
| Вимагати пароль для відкриття перед надсиланням чи поширенням | Захистити |
| Ви вже знаєте пароль і хочете копію, що вільно відкривається | Розблокувати |
| Ви забули пароль | Жоден інструмент не допоможе; тримайте паролі поза PDF |
| Файл не відкривається зі структурних причин (не шифрування) | Відновлення / Отримати інформацію, а не розблокування |
І Protect, і Unlock працюють на сервері без облікового запису на шляху каталогу. Шифрування не зменшує файл; Стиснення — окрема задача перестиснення потоків, і їй усе одно потрібен розблокований (або ніколи не зашифрований) PDF. OCR, експорт таблиць і більшість операцій редагування так само потребують спершу доступу до відкритого вмісту: розблокуйте відомим паролем, потім запускайте інший інструмент.
Зберігайте паролі поза PDF (менеджер паролів, сховище секретів). Якщо покласти пароль відкриття в той самий лист, що й вкладення, захист втрачає сенс. Про ті самі задачі через HTTP див. Розробникам.