PDF chráněná heslem a jejich meze
Moje PDF je chráněné a nástroj tvrdí, že ho nemůže upravit. Proč a jaké mám možnosti?
Existují dvě různá hesla
Šifrování PDF, definované v ISO 32000, rozlišuje uživatelské heslo a vlastnické heslo. Uživatelské heslo — často nazývané heslo pro otevření — je nutné k tomu, aby se dokument vůbec dešifroval. Bez něj jsou obsahové streamy šifrovaný text a žádný software nepřečte jedinou stránku. Vlastnické heslo je jiné: dokument se otevře i bez něj, ale šifrovací slovník nese příznaky oprávnění, které říkají, co má prohlížeč splňující normu odmítnout povolit — třeba tisk, kopírování textu nebo úpravu souboru.
Ten rozdíl vysvětluje většinu zmatku. Dokument, který se otevře okamžitě, ale nedovolí vám zkopírovat odstavec, není „odemčený“ — je zašifrovaný prázdným uživatelským heslem a doplněný sadou omezení.
Co šifrování skutečně chrání
| Heslo | Nutné k otevření? | Co chrání | Jak je silné |
|---|---|---|---|
| Uživatelské heslo (pro otevření) | Ano | Samotný obsah; streamy a řetězce jsou zašifrované | Tak silné jako šifra a zvolené heslo |
| Vlastnické heslo (pro oprávnění) | Ne | Kryptograficky nic; nastavuje příznaky, které se prohlížeč žádá respektovat | Pouze doporučující |
Příznaky oprávnění jsou prosba směřovaná ke slušně vychovanému softwaru, ne vynucovací mechanismus. Bajty se dešifrují v okamžiku, kdy se dokument otevře, takže jakýkoli program, který se rozhodne příznaky ignorovat, to udělat může. Berte je jako vyjádření záměru — užitečné jako signál, jak se má s dokumentem zacházet, nepoužitelné jako bezpečnostní opatření.
Proč editor soubor odmítne
Aby šlo PDF restrukturalizovat — sloučit ho, rozdělit, otočit stránky, zahodit nepoužité objekty — musí knihovna rozebrat graf objektů. V zašifrovaném dokumentu jsou řetězce a streamy, které ten graf tvoří, šifrovaným textem, dokud se neodvodí správný klíč. Není co rozebírat. Není to rozhodnutí nástroje; žádný dokument tam zatím doopravdy není.
Strukturální nástroje FileSlimmeru pro PDF jsou proto u zašifrovaného dokumentu vypnuté a řeknou to, místo aby selhaly v polovině s poškozeným výstupem. Je to správné chování, i když je to to méně pohodlné.
Co se stane s heslem, které zadáte
Tam, kde je nabídnutá cesta s heslem, se heslo použije k odvození dešifrovacího klíče v paměti, v této kartě prohlížeče, po dobu běhu úlohy. Nezapisuje se do místního úložiště, nezapisuje se do cache service workeru, nedává se do URL a neodesílá se — v této aplikaci není žádný server, kam by se odeslat dalo. Když kartu zavřete, je pryč.
Přesto se vyplatí být rozvážný v tom, kam jakékoli heslo píšete. Rozšíření prohlížeče umí číst obsah stránky, a to platí o každém webu včetně tohohle. Pokud je dokument natolik citlivý, že to hraje roli, odemkněte ho v offline programu na počítači, kterému věříte.
Co tenhle nástroj neudělá
- Nebude se pokoušet obnovit nebo hrubou silou uhodnout heslo, které nemáte.
- Nesmaže vlastnické heslo, aby obešel příznaky oprávnění u dokumentu, ke kterému nemáte práva.
- Nevyrobí potají dešifrovanou kopii dokumentu, který jste otevřeli heslem; odstranění ochrany je samostatná, výslovná akce.
- Nebude předstírat, že příznak oprávnění je bezpečnostní hranice.
Odstranění ochrany z dokumentu, který nemáte právo měnit, může navíc porušovat smlouvu nebo zákon tam, kde žijete. To je otázka pro vás a případně pro právníka — ne pro kompresní nástroj.
Reálné možnosti, když jste v koncích
- Požádejte toho, kdo dokument vytvořil, o nechráněnou kopii. Tohle je zdaleka nejčastější řešení a stojí jednu zprávu.
- Pokud máte heslo pro otevření, použijte ho: s dešifrovaným dokumentem je zase dostupná každá běžná operace.
- Pokud potřebujete stránky jen k prohlédnutí, vytiskněte je do PDF nebo vyexportujte rasterizovanou kopii. Přijdete o textovou vrstvu, odkazy a strukturu pro přístupnost a zachováte vzhled.
- Pokud je dokument kromě šifrování i podepsaný, zastavte se a zvažte to znovu. Jakákoli úprava zneplatní podpis a podepsaný dokument obvykle existuje právě proto, že si ho někdo potřebuje později ověřit.
Ještě jedno omezení
Starší revize šifrování PDF používaly slabé odvozování klíče a krátké klíče a považují se za prolomené. Novější revize používají AES s pořádnou odvozovací funkcí. Podle pohledu na dokument nepoznáte, kterou z nich používá, a to, že nástroj rychle otevře starý soubor, není důkaz, že se nový zachová stejně. Pokud vybíráte ochranu pro dokument, který sami vytváříte, zvolte současný software a dlouhé heslo, místo abyste se spoléhali na historii formátu.
Nástroje k tomuto tématu
Zdroje
- ISO 32000-2 — Document management, Portable Document Format
- Adobe — PDF 32000-1:2008, clause 7.6 on encryption and permissions
- NIST FIPS 197 — the Advanced Encryption Standard