Säker epost med PGP
Krypteringsprogrammet som fick myndigheterna att gå i taket
Text: Peter Svensson
När krypteringsprogrammet Pretty Good Privacy släpptes fritt på Internet gick de amerikanska myndigheterna i taket. Hur kan ett krypteringsprogram skapa en sådan oro? InternetGuiden reder ut historien och förklarar hur du ska göra för att skydda din epost.
Kryptering innebär att man tar något som från början är läsligt och gör det oläsligt. Om det vore hela poängen så vore det inte så svårt att kryptera, men tyvärr så finns det en hake. Man måste kunna få det oläsliga läsligt igen vid ett senare tillfälle.
Problemet är att mottagaren på något sätt måste få en kodnyckel skickad till sig för att dekryptera filen och göra den läslig. Om det fanns säkra kanaler för att skicka nyckeln, så kunde man ju lika gärna skicka originalfilen okrypterad!
Så vad göra?
Lösningen är shareware-programmet Pretty Good Privacy, PGP, som delar upp kodnyckeln i två delar. Den ena delen kallar man offentlig (public) och den andra privat. Denna metod kallas RSA efter de tre upphovsmännen,Rivest, Shamir och Adleman. Om du får en väns offentliga kodnyckel,och skickar henne en fil krypterad med den, så är det bara din vän som kan dekryptera den, eftersom hon har den andra, privata, delen av kodnyckeln.
De offentliga kodnycklarna kan skickas via osäkra kanaler (epost, tillexempel). Någon annan kan med andra ord få tag på din väns offentliga kodnyckel, kryptera ett meddelande till henne och låtsas vara du.
Missnöjda myndigheter
Detta förhindras genom att du signerar filen du krypterar, med din egen privata kodnyckel. Din vän dekrypterar sedan filen med dels den privata delen av sin egen nyckel, men också med den offentliga delen av din nyckel.
I de fall en privat nyckel kommer på avvägar kräver PGP ett lösenord varje gång nyckeln används.
Det amerikanska säkerhetsministeriet NSA vill att övriga världen bara ska använda enklare krypteringsmetoder, medan kraftfulla metoder endast skall användas av det egna landets säkerhetstjänst. Anledningen till detta är att NSA har superdatorer som kan läsa filer som krypterats enligt traditionella metoder, men som har det desto svårare med RSA-krypterade filer.
Detta innebar till en början inga problem eftersom krypteringsmetoden hade utvecklats i USA och klassades som militär materiel. NSA kunde alltså lugnt läsa andras krypterade filer, medan deras egna filer gjordes oläsliga för obehöriga.
Som att skicka vykort
Den amerikanske datorkonsulten Philip Zimmerman läste om RSA-metoden i en akademisk tidning och använde den när han skrev ett eget krypteringsprogram som han kallade PGP - Pretty Good Privacy. Zimmerman jämför kryptering av epost med att skicka vanliga brev inuti välförseglade kuvert. Även om man inte har olagligt uppsåt, så kanske man inte vill skicka sina affärs- eller kärleksbrev på baksidan av ett vykort. Men det är just såi vanlig epost skickas. Meddelandet står i klartext i brevet, som kan läsas i varje dator brevet passerar.
NSA och andra amerikanska myndigheter gick i taket då de fick reda på att ett program av PGP:s kaliber hade tillverkats.
Dessutom gjorde Zimmerman sin programvara tillgänglig på Internet, vilket resulterade i att PGP började spridas över hela världen.
Privatpersoner som krypterade sin epost och sina filer med en militär krypteringsstandard skulle bli minst sagt svåra att hålla koll på.
Illegal export?
Philip Zimmerman har nyligen blivit stämd av företaget som företräder patentet på RSA. Han arresterades när han kom hem till USA från en föreläsningsturné i öststaterna. Han konstaterade då att "i de forna kommunistländerna har man för länge sen insett värdet av att kunna kommunicera utan att myndigheterna kan kontrollera vad som sägs. Det är dags att vi i väst också inser värdet av detta".
Myndigheterna hävdar att distribution av PGP - som alltså bygger på en militär krypteringsmetod - på Internet,
är att jämställa med illegal export. Zimmerman riskerar ett väldigt långt fängelsestraff om han blir dömd.
Tack vare PGP:s spridning har debatten om hur krypteringsprogram skall klassas och användas, tagit fart.
Det finns ett flertal organisationer i USA som försöker påverka politikerna att överge sin hårda linje och
tillåta programmerare att använda sig av varandras metoder, oavsett vem som innehar patentet
(League for Programming Freedom), och för att göra det möjligt för vem som helst att helt lagligt inneha
högeffektiv krypteringsprogramvara (Electronic Frontier Foundation,EFF).
Clipper-kontroversen
I USA är många oroliga över att kryptering för privat bruk ska förbjudas. Inte minst efter den kamp som rått mellan påtryckargrupper som EFF och myndigheterna om det så kallade clipper-chipet.
Clipper-chipet är en krets som är tänkt att sitta i alla telefonväxlar, datorer och annan kommunikationsutrustning
i USA. Den ska automatiskt kryptera all dataöverföring, vare sig det är en datafil eller ett telefonsamtal.
I sig är detta en bra ide, men clipper-chipet råkar vara konstruerat med en "bakdörr" som gör att NSA, eller andra
amerikanska myndigheter, har möjlighet att avlyssna kommunikationen. Försöken att få clipper-chipet
stoppat misslyckades. Genomförs dessutom ett förbud mot privat kryptering, så får NSA fullständig kontroll över all
kommunikation inom, till och från USA.
Så använder du PGP för PC
När du hämtat hem PGP, så bör du skapa ett bibliotek för programmet och sedan packa upp arkivfilen med PKUNZIP (Finns till exempel på
http://www.sinica.edu.tw/simtel/simtel_index_zip.html
Filen heter pkz204g.exe).
Vi antar att arkivfilen pgp262.zip ligger i roten på c:
c:\> md \pgp
c:\> pkunzip pgp262.zip c:\pgp
c:\> cd pgp
c:\pgp>
Nu måste du be PGP skapa en nyckelrings-fil. Den filen kommer att innehålla din privata och offentliga kodnyckel.
c:\pgp> pgp -kg
PGP kommer att be dig om ett användarnamn, som din egen nyckel kommer att lagras under.
Det rekommenderas att du lägger till din egen epostadress i namnet.
Till exempel: Namn Namnsson namn@dator.se. Sedan kommer du att få ange ett lösenord två gånger,
för att skydda din privata nyckel om den skulle komma på villovägar. När detta är gjort så
behöver PGP din hjälp att skapa en slumpmässig kodnyckel, genom att mäta tiden mellan ett antal tangentnedtryckningar.
Följande kommando skapar en vanlig ASCII-fil som innehåller din offentliga kodnyckel, som sedan kan
sändas i ett epostbrev, för att låta mottagaren lägga den nyckeln till sin egen nyckelring. Nyckeln kommer att hamna i filen "pubkey.asc".
c:\pgp> pgp -kxa namn pubkey.asc
När du väl mottagit en fil (bettan.asc) som innehåller en god väns offentliga nyckel, så låter du med ett enkelt
kommando PGP lägga den nyckeln till din nyckelring.
c:\pgp> pgp -ka bettan.asc
När du krypterar en fil behöver du bara ange filens namn och vems offentliga nyckel du vill använda. Om den fil du vill kryptera heter "partaj.txt", så kommer den krypterade kopian att heta"partaj.pgp". Kopian är vanligtvis mycket mindre än originalet, eftersom PGP alltid komprimerar filen innan den krypteras, för att ytterligare försvåra otillåten läsning.
c:\pgp> pgp -e partaj.txt bettan
Har du fått en krypterad fil (svar.pgp) som du vill kryptera upp, så startar du bara PGP, med den krypterade filens namn som argument.
PGP kommer automatiskt att hitta rätt nyckel i din nyckelknippa.
c:\pgp> pgp svar.pgp
Om du vill skicka något krypterat i ett brev över Internet, så bör du känna till att vissa epostväxlar har hyss för sig med
överföringen, och du måste för säkerhets skull be PGP att kryptera din fil på så sätt att den inte kan skadas på vägen,
genom att lägga till ett a (för ASCII).
c:\pgp> pgp -ea partaj.txt
Så använder du PGP för Macintosh
När du laddat ner PGP så måste du först packa upp programmet med hjälp av Stuffit. Dubbelklicka sedan
på "MacPGP2.6-installer" och ange var någonstans på din hårddisk du vill installera PGP. Dubbelklicka
sedan på ikonen som ser ut som en hemlig agent för att starta programmet. PGP kommer vid uppstart att ge dig en
dialogruta som hela tiden ger dig ingående information om vad som händer. Macintosh-program brukar normalt
inte arbeta med dialogrutor som låter textmeddelanden rulla fram - här ser man tydligt att programmet ursprungligen kommer från PC-världen.
Skapa ditt nyckelpar
Först måste du skapa dina offentliga och privata kodnycklar. Gå in under Key -> Generate Key. Du kommer nu
att få bestämma hur stor nyckel du vill ha. Från drygt 300 upp till 1024bitar. InternetGuiden rekommenderar
den största nyckelstorleken, även om det innebär att det tar lite längre tid att kryptera/dekryptera filer.
Vid nyckelgenereringen kommer PGP att be dig om ett antal knapptryck på tangentbordet, som hjälp för att skapa
slumpmässiga värden. Du kommer dessutom att avkrävas ett lösenord som ska skydda din hemliga nyckel, om den skulle hamna i orätta händer.
Ge någon annan din offentliga nyckel
Nu har du ett nyckelpar. För att ge andra din offentliga nyckel så att de kan skicka dig ett krypterat meddelande
som bara kan krypteras upp av dig, så går du in under menyvalet Key -> Extract key och väljer sedan att
öppna din offentliga nyckelringsfil (pubring.pgp). När du öppnat filen så finns där bara din egen offentliga nyckel.
Så småningom kommer din nyckelring att innehålla flera andra personers offentliga nycklar. Du kommer då att behöva
"klicka bort" deras nycklar från menyn när du bara vill ta ut din egen offentliga nyckel till en fil.
MacPGP kommer sedan att skapa en ny fil som du kan ge till den som skall sända meddelanden till dig.
Om du skall skicka den offentliga nyckeln via epost bör du klicka i rutansom ber MacPGP att "Asciifiera" filen.
Filen kommer då att skrivas på ett sådant sätt att den inte skadas av ovarsamma mail-demoner.
Lägg till någon annans nyckel till din nyckelring
När någon har skickat dig sin offentliga nyckel, så ser du till att spara den som en REN TEXTFIL (Inga underliga word-format alltså!)
och startar sedan MacPGP. Gå sedan in under Key -> AddKey och välj den sparade filen. Nyckeln i filen kommer nu att
läggas till din offentliga nyckelfil (puring.pgp) och MacPGP kommer själv att läsa av vems nyckeln är, och lagra den under rätt namn.
Kryptera en fil så att bara mottagaren kan dekryptera den. Välj Encrypt/Sign från huvudmenyn.
Du måste nu berätta två saker för MacPGP; vilken fil det är du vill kryptera och vilken offentliga nyckel
det är du vill använda. Du bör rimligtvis veta vad filen heter samt namnet på den person du skall skicka den
krypterade filen till. Filen väljer du från en vanlig filmeny och personens offentliga nyckel väljer du från
menyn som öppnas efter att du valt din publika nyckelring (pubring.pgp).
Dekryptera meddelande
Har du fått ett krypterat meddelande, så startar du MacPGP igen, men väljer den här gången Open/Decrypt från huvudmenyn.
Du erbjuds en filmeny och väljer filen som innehåller det krypterade meddelandet. MacPGP kommer att kunna se vems
publika nyckel som krävs för att dekryptera meddelandet, och gör det automatiskt om den nyckeln finns i den
nyckelringsfil du väljer (återigen förmodligen pubring.pgp). Du får sedan välja vad den dekrypterade filen skall
heta och sedan är det bara att ta för sig av hemligheterna.
Mer information
MacPGP innehåller långt fler finesser än dem vi hunnit beskriva. En utmärkt introduktion till dessa hittar man
i den inbyggda hjälpfunktionen, men även ute på nätet. Till exempel: http://www2.hawaii.edu/~phinely/
MacPGP-and-AppleScript-FAQ.html som även ger dig flera intressanta pekare till program som förenklar hanteringen - till exempel Applescript-program, som gör kryptering och dekryptering nästan omärkligt för användaren.
PGP-adresser på nätet
Information:
Electronic Frontier Foundation (EFF)
http://www.eff.org/
League for Programming Freedom (LPF)
http://www.lpf.org/
Största sidan med flest PGP-resurser:
http://draco.centerline.com:8080/~franl/pgp/
Intervju med Philip Zimmerman:
gopher://gopher.well.sf.ca.us/00/>
hacking/pgp.up
http://tbird.cc.iastate.edu/pgp/
Artiklar, info och mycket shareware:
http://www.ifi.uio.no/~staalesc/PGP
Anonym ftp:
PGP i Sverige:
ftp://isy.liu.se/pub/misc/pgp/
PGP i Tyskland:
ftp.informatik.uni-hamburg.de/pub/virus/crypt/pgp
PGP i Italien:
ftp://ftp.unimi.it/pub/security/crypt/PGP
PGP i USA:
Berkeleys cypherpunkarkiv
ftp://ftp.csua.berkeley.edu/pub/cypherpunks/pgp>
MIT:
ftp://net-dist.mit.edu/pub/PGP
|