Termín PGP je zkratka pro Pretty Good Privacy, což znamená velmi dobrou ochranu soukromí. Je to šifrovací program navržený tak, aby poskytoval soukromí a bezpečnost a také autentizaci pro online komunikační systémy. Phil Zimmerman je autorem prvního programu PGP a podle něj byl poskytován zdarma kvůli rostoucí sociální poptávce po soukromí.
Od svého vzniku v roce 1991 bylo vytvořeno mnoho verzí programu PGP. V roce 1997 Phil Zimmerman předložil návrh Internet Engineering Task Force (IETF) na vytvoření otevřeného standardu PGP. Návrh byl přijat a vedl k vytvoření protokolu OpenPGP, který definuje formáty standardů pro šifrovací klíče a zprávy.
I když byl původně používán pouze k zabezpečení e-mailových zpráv a příloh, je PGP nyní aplikován na širokou škálu použití, včetně digitálních podpisů, šifrování celých disků a ochrany sítí.
PGP byl původně vlastněn společností PGP Inc., kterou později koupila Network Associates Inc. V roce 2010 společnost Symantec Corp. zakoupila PGP za 300 milionů dolarů a tento termín se nyní používá jako ochranná známka pro její produkty kompatibilní s OpenPGP.
Jak to funguje?
PGP je jedním z prvních programů široce dostupných pro implementaci šifrování veřejného klíče. Je to hybridní šifrovací systém, který používá symetrické a asymetrické šifrování k dosažení vysoké úrovně bezpečnosti.
V jednoduchém procesu šifrování textu se běžný text (data, která lze jasně pochopit) převádí na šifrovaný text (data, která nelze přečíst). Před provedením šifrovacího procesu většina systémů PGP komprimuje data komprimací běžného textového souboru před jeho odesláním, aby PGP ušetřil místo na disku a čas odesílání, přičemž zároveň zlepšil bezpečnost.
Po kompresi souboru začíná skutečný proces šifrování. V této fázi se šifruje komprimovaný běžný text pomocí klíče pro jednorázové použití, který je znám jako klíč relace (session key). Tento klíč je náhodně generován pomocí symetrického šifrování a pro každou relaci PGP je klíč relace jedinečný.
Následně je samotný klíč relace (1) zašifrován pomocí asymetrického šifrování, kdy určený příjemce (Bob) poskytuje svůj veřejný klíč (2) odesílateli zprávy (Alice), aby mohla zašifrovat klíč relace. Tento krok umožňuje Alici bezpečně sdílet klíč relace s Bobem přes internet, bez ohledu na bezpečnostní podmínky.

Asymetrické šifrování klíče relace se obvykle provádí pomocí algoritmu RSA. Mnoho dalších šifrovacích systémů také používá RSA, včetně protokolu Transport Layer Security (TLS), který zabezpečuje velkou část internetu.
Jakmile je zašifrovaný text zprávy a zašifrovaný klíč relace odeslán, může Bob použít svůj soukromý klíč (3) k dešifrování klíče relace, který je poté použit k dešifrování zašifrovaného textu zpět na původní běžný text.

Kromě základního procesu šifrování a dešifrování PGP také podporuje digitální podpisy, které splňují alespoň tři funkce:
Autentizace: Bob může ověřit, že odesílatelem zprávy je Alice.
Integrita: Bob si může být jistý, že zpráva nebyla změněna.
Nediskrétnost: Po digitálním podepsání zprávy nemůže Alice tvrdit, že ji neposlala.
Případy použití
Jedním z nejběžnějších použití PGP je zabezpečení e-mailových zpráv. E-mail chráněný PGP se převádí na řetězec nečitelných znaků (zašifrovaný text) a lze jej dešifrovat pouze pomocí odpovídajícího dešifrovacího klíče. Mechanismy fungují prakticky stejně pro zabezpečení textových zpráv. Existují také některé programové aplikace, které umožňují implementaci PGP nad jinými aplikacemi, což efektivně přidává šifrovací systém do nesecureních komunikačních služeb.
I když se PGP většinou používá k zabezpečení internetových komunikací, může být také aplikováno na šifrování jednotlivých zařízení. To znamená, že PGP může být aplikováno na oddíly disku počítače nebo mobilního zařízení. To znamená, že při šifrování pevného disku bude uživatel požádán o zadání hesla pokaždé, když systém spouští.
Výhody a nevýhody
Díky společnému použití symetrického a asymetrického šifrování umožňuje PGP uživatelům bezpečně sdílet informace a šifrovací klíče přes internet. PGP využívá jak bezpečnost asymetrického šifrování, tak rychlost symetrického šifrování jako hybridní systém. Kromě bezpečnosti a rychlosti zajišťují digitální podpisy také integritu dat a autenticitu odesílatele.
Nyní je protokol OpenPGP poskytován jako povolený pro vznik jednotného konkurenčního prostředí a řešení PGP mnoha společnostmi a institucemi. Všechny programy PGP, které splňují standardy OpenPGP, jsou navzájem kompatibilní. To znamená, že soubory a klíče vytvořené v jednom programu mohou být použity v jiných programech bez problémů.
Pokud jde o nevýhody, systémy PGP nejsou snadno použitelné a pochopitelné, zejména pro uživatele, kteří mají jen málo technických znalostí. Také dlouhé veřejné klíče jsou pro mnohé relativně nepohodlné.
V roce 2018 byla zveřejněna vážná bezpečnostní chyba nazvaná EFAIL organizací Electronic Frontier Foundation (EFF). EFAIL umožnil útočníkům zneužít aktivní HTML obsah v šifrovaných e-mailech k přístupu k nezakódovaným verzím zpráv.
Některé obavy popsané EFAIL však byly již dříve známy komunitě PGP od konce devadesátých let. Ve skutečnosti jsou zranitelnosti spojeny s různými aplikacemi ze strany e-mailových klientů, nikoli s PGP samotným. Proto, i přes znepokojivé a zavádějící titulky, zůstává PGP stále velmi bezpečné.
Závěrečné myšlenky
PGP se stalo základním nástrojem pro ochranu dat a od svého vzniku v roce 1991 se používá v široké škále aplikací, kde poskytuje soukromí, bezpečnost a autentizaci pro mnoho komunikačních systémů a poskytovatelů digitálních služeb.
I když objev z roku 2018 o chybě EFAIL vyvolal velké obavy ohledně životaschopnosti protokolu, stále se považuje za silnou a robustní základní technologii šifrování. Je také důležité poznamenat, že různé aplikace PGP mohou nabízet různé úrovně bezpečnosti.

