TIP#1489: V čem otevřu soubor s příponou .gpg? Co je to PGP?

Snadné, například v GPG4Win  (GNU Privacy Guard for Windows), což je jedna z variant volně použitelného šifrovacího a dešifrovacího nástroje založeného na OpenPGP. A také oficiální distribucí GnuPG pro Windows – gnupg.org/download .

Celé to patří k letité klasice v šifrování mající zkratku PGP a význam Pretty Good Privacy, dnes volně dostupné právě jako OpenPGP – slouží k šifrování a podepisování dokumentů a komunikace – ať už jsou to přímo soubory nebo třeba elektronická pošta. Zmíněné GnuPG můžete využít také, umí vše potřebné, ale hodí se pro někoho kdo chce pracovat z příkazové řádky – právě Gpg4Win je pak verze pro Windows nabízející GUI (grafické rozhraní), ale také třeba plugin pro Outlook (ten umožní pracovat s klasickými PGP/MIME e-maily).

Na PGP je zajímavá historie – software pro šifrování a podepisování se objevilo v roce 1991 a jeho autorem je Phil Zimmerman. Založené je na algoritmu RSA pro asymetrickou kryptografii a už od samého počátku se potýkalo s tím, že se vlastně stalo velmi rychle nežádoucí – šifrování je prakticky neprolomitelné, takže z řady aspektů jsou šifrovací nástroje (jako je PGP) považovány za ohrožení národní bezpečnosti.

Výhoda PGP byla, že šlo o volně použitelné a zdarma šířené a využitelné software – což přineslo i řadu rozšíření do programů, kde je potřeba/vhodné šifrovat (zejména třeba do e-mailů). Zároveň to ale znamenalo, že řada z možností nasazení nebyla nijak uživatelsky/začátečnicky přívětivá.

Z původního PGP se v roce 1997 stalo OpenPGP – otevřený standard, který právě Philip Zimmerman navrhl IETF a od té doby je používán a vyvíjen jako internetový standard (RFC 4880). Další variantou (odvozeninou) z PGP je výše zmíněný GNU Privacy Guard (hlavní program se jmenuje gpg, proto i výše zmíněná přípona) od Free Software Foundation. Právě standardizace znamená, že různorodé varianty jsou navzájem kompatibilní.

Celé je to ještě poměrně dost komplikované tím, že řada PGP programů obsahuje technologie, které jsou porůznu patentovány a je velmi omezeno jejich šíření. Což znamená praktickou nemožnost šířit zdrojový kód, ale také to komplikuje komerční využití – většinu z nich lze tedy zdarma používat pouze pro osobní potřebu.

Na PGP je ještě zajímavé výše zmíněná asymetrická kryptografie – ta spočívá v používání dvojince klíčeů – jeden klíč se používá pro zašifrování, druhý klíč se používá pro dešifrování – první z nich může uživatel poskytnout veřejně, tak aby jiní lidé mohli šifrovat zprávy/soubory pro něj určené. Dešifrovací klíč si pak bude chránit a bude to jediná možnost jak získat obsah zašifrovaných zpráv/souborů do původní podoby. Nikdo kdo nemá druhý (neveřejný) dešifrovací klíč se tak nebude k obsahu zpráv či souborů dostat.

Systém dvou klíčů samozřejmě je zároveň trochu komplikací. Je nutné mít jistotu, že veřejný klíč skutečně patří „správné“ osobě a také to, že je opravdu platný. A co zejména, je nutné velmi pečlivě chránit dešifrovací klíč, aby se nedostal do nepovolaných rukou.

Podepisování funguje podobně – odesílané informace lze digitálně podepsal pomocí soukromého klíče (šifruje se ale jenom „digest“, tedy číselná zkrácená forma celého textu/souboru) a příjemce si pomocí veřejného klíče odesílatele může ověřit, že zpráva/soubor skutečně podchází od tohoto odesílatele.