Pretty Good Privacy

Pretty Good Privacy, vanligen PGP, är ett program som används för att kryptera och dekryptera e-post, texter och filer. 

PGP bygger på ett system med privata och offentliga nycklar. Alla som vill skicka ett krypterat meddelande till en person använder dennes offentliga nyckel. Mottagaren använder sedan sin privata nyckel för att avkryptera meddelandet. På engelska kallas tekniken för PKI, Public Key Infrastructure. PKI används också för att upprätta krypterade förbindelser över internet. Programmet konstruerades ursprungligen av Philip R. Zimmermann.

Historik 
Pretty Good Privacy var det första krypteringsprogrammet som vände sig till privatpersoner. Det skapades 1991 av amerikanen Phil Zimmerman som valde namnet inspirerat av den fiktiva matbutiken Ralph’s Pretty Good Grocery skapad av författaren Garrison Keillor. Zimmerman var kärnvapenmotståndare och medlem i mejllistan Cypherpunk. Han skapade PGP för att likasinnade skulle kunna använda BBS:er, nyhetsgrupper och andra kommunikationskanaler online utan risk att bli avlyssnade. PGP erbjöd en tillräckligt stark kryptering för att inte säkerhetstjänster skulle kunna dekryptera informationen.

PGP släpptes gratis och med öppen källkod. Programmet fick spridning via Usenet och blev snart populärt, bland annat hos dissidenter i totalitära stater. Den amerikanska staten uppskattade inte programmet då de i spåren av det kalla kriget inte ville att krypteringsmöjligheter spreds till främmande makter, något som kom att kallas Crypto Wars. Mellan 1993 och 1996 utreddes Phil Zimmerman för brott.

Phil Zimmerman är invald i Internet Hall of Fame för att ha skapat Pretty Good Privacy. Enligt honom själv har såväl Vita huset som Vatikanstaten använt programmet för kryptering.

Teknisk beskrivning 
PGP är ett så kallat hybridkrypto där man använder två olika krypton för att kryptera meddelanden. För att kryptera ett meddelande i PGP letar man reda på mottagarens offentliga nyckel. Man genererar sedan en slumpmässig sessionsnyckel som man använder för att kryptera själva meddelandet. Man krypterar sedan sessionsnyckeln med mottagarens offentliga nyckel och skickar iväg båda delarna till mottagaren. Mottagaren kan nu dekryptera sessionsnyckeln med sin privata nyckel och sen dekryptera meddelandet med sessionsnyckeln. För krypteringen av meddelandet/filen använder PGP någon av krypteringsalgoritmerna AES, IDEA, TripleDES, CAST eller Twofish, och för att kryptera sessionsnyckeln använder PGP antingen krypteringsalgoritmen RSA eller ElGamal.

Anledningen till att man inte krypterar meddelandet med RSA direkt är att RSA, som de flesta asymmetriska krypton, är mycket långsamt. Att använda till exempel AES eller IDEA direkt är också ett problem: kryptot är snabbt men är ett symmetriskt krypto och kräver därför att man skickar iväg nyckeln till mottagaren på något sätt. Hybridkrypton är därför en kompromiss som innebär att man kan använda en snabb algoritm för att kryptera meddelandet, som normalt är stort, och en långsam algoritm för att kryptera nyckeln, som normalt är liten.

OpenPGP 
PGP är en proprietär programvara som omgärdas av en rad problem med bland annat upphovsrätt, vilket försvårar användandet av programmet i tredjepartsprodukter. Stora delar av algoritmerna i PGP är däremot icke-proprietära och utgör numera under namnet OpenPGP en helt öppen standard och används av såväl PGP som GnuPG och Hushmail med flera.

Se även 
 Lag om nyckelutlämning
 GNU Privacy Guard

Källor

Externa länkar 
 PGP Corporation – Med information om Pretty Good Privacy och möjlighet att ladda ner en testversion av den kommersiella programvaran.
 Phil Zimmermann's Home Page – Phil Zimmermanns egen webbplats med utförlig information om olika krypto-tekniker.
 The GNU Privacy Guard – Tillhandahåller gratis GnuPG-programvara under GNU General Public License, i enlighet med The OpenPGP Alliances riktlinjer.
 Berättelsen om PGP och USA, Wired, 1994

Säkerhetsprogram