Introductie OpenPGP
25 jaar geleden was alle versleuteling (Eng: encryption) gebaseerd op een vorm van gedeelt geheim (Eng: shared secret) - omdat alle partijen die versleuteling gebruikten dezelfde sleutel (Eng: key) moesten hebben om te decoderen kon het simpel gebroken worden door 1 van de sleutels te bemachtigen.
Toen kwam het concept van publiek sleutel-geheim sleutel encryptie. Kort gezegt is een publieke sleutel iets die je kunt kopieren naar letterlijk iedereen omdat het alleen de mo
gelijkheid biedt om data te versleutelen welke data alleen ontcijferen kan worden met jouw geheime sleutel. Publieke sleutels versleutelen, geheime sleutels ontcijferen.
Je kunt ook documenten met je geheime sleutel "tekenen" (Eng: "Sign"), hetgeen betekent dat je een versleutelde rekensom (Eng: checksum) van dat document kunt maken. Deze kunnen anderen gebruiken om met zekerheid te zeggen of jij ook werkelijk dat document hebt gemaakt en of het niet is aangepast.
Beveiligingsproblemen
De makkelijkste (en meest gebruikte) manier om de versleuteling te "breken" is genaamt "Man in the Middle". Dat houdt in dat wanneer persoon A probeert een versleutelt document te versturen naar persoon B een derde persoon, persoon C, er tussen kan gaan staan en persoon A kan laten geloven dat zhij (persoon C) persoon B is en andersom. Het is een eenvoudige truc, maar het werkt goed wanneer mensen niet opletten.
Er zijn een paar manieren om tegen deze personificatie aanvallen te weren. Ten eerste, en dat is het meest directe, is om mensen jouw publieke sleutel's vingerafdruk (Eng: fingerprint) te geven. Voor DSA sleutels gemaakt door GnuPG is het een 40 tekens lang hexdecimaal (base 16) nummer, waarvan de laatste 8 tekens je sleutel-id is. Hoewel verschillende sleutels potentieel dezelfde vingerafdruk kunnen delen, is het aantal sleutels dat iemand moet creeren om dezelfde te vinden simpelweg astronomies.
De tweede manier, die vaak gebruikt wordt wanneer je voor het eerst in contact komt met een persoon, is het verifieren van iemands publieke sleutel handtekening. Net zoals de handtekeningen op bestanden, kunnen vriend(in)en ook hun geheime sleutels gebruiken om jouw publieke sleutel te tekenen. Anders dan dokumenten tekenen, geeft het tekenen van sleutels niet eigendom aan. Het geeft aan in eerste hand, van gezicht tot gezicht kennis, dat de sleutel in feite eigendom is van degene die stelt dat de sleutel van hem/haar is. Als je een sleutel voor de eerste keer krijgt en je vind een vriend(in)'s handtekening er op, kun je hopelijk genoeg in diegene's oordeel vertrouwen dat je diegene's nieuwe sleutel ook vertrouwt. Als je geeneen handtekening op een sleutel herkent zou je zelfs naar de volgende stap kunnen gaan en alle handtekeningen van de nieuwe sleutel's tekenaar controleren. Dit hee het web van vertrouwen (Eng: web of trust). Het feit meegenomen dat de meeste IMCers elkaar kennen door een of twee mensen hebben we de mogelijkheid om iemand die nieuw is te verifieren door middel van contacten met hun lokale IMC of iemand die betrokken is met een ander IMC die hem/haar heeft ontmoet.
Elke keer wanneer je een bit toevoegt verdubbel je het aantal mogelijke sleutelcombinaties. In het achterhoofd houdende dat de snelheid van een computer verdubbelt elke 18 maanden (Murphys Law), kost het meerdere keren je levensduur om een 1024 bit sleutel te breken. Het zou voor hen veel makkelijker zijn om in te breken je huis terwijl je weg bent en vervolgens een kopie van je geheime sleutel welke op je harde schijf staat te maken. Dit is de reden waarom we een wachtwoord gebruiken voor het versleutelen/ontcijferen van onze geheime sleutels enkel wanneer we ze gebruiken. Indien je het gevoel hebt dat je echt erg veilig wilt zijn, gebruik dan een lang, alphanumeriek met zowel hoofd als kleine letters willekeurig wachtwoord welke niet in het woordenboek voorkomt en houdt je sleutelringen op een voorzichtig verstopte floppy in plaats van op je harde schijf.
Beginnen
Als je dit nog niet gedaan hebt, ga naar
http://www.gnupg.org/ en download de software. Vanaf een shell (Windows gebruikers: shell = DOS) voer je het volgende commando twee keer uit:
gpg --gen-key
De eerste keer zou het je moeten vertellen dat het je sleutelring heeft gecreerd, de tweede keer start het het sleutel generatie menu. Gebruik de standaarden behalve echte naam, e-mail adres, en wachtwoord. Je kunt een vervaldatum van een (1) jaar instellen. Omdat dit je eerste sleutel is, hoef je geen notitie toe te voegen behalve wanneer je meerdere sleutels voor jezelf maakt (bijvoorbeeld verschillende sleutels voor thuis/werk). Beweeg je muis, type willekeurige toetsen op je toetsenbord, etcetera terwijl het probeert een entropie te maken - als het niet genoeg krijgt, ga dan door tot dat wel het geval is.
Nu zou je klaar moeten zijn met hen genereren, dus probeer het volgende:
gpg --fingerprint
Dit zou je je sleutel moeten laten zien, samen met zijn vingerafdruk en mogelijk wat andere data zoals een ondersleutel (Eng: subkey), etcetera. Nu, erg belangrijk, voordat je iets anders doet, neem een
NIEUWE FLOPPY en kopieer de *.gpg bestanden hier op als reserve kopie (Eng: backup). Met jouw geheime sleutel heb je altijd de macht om voor jezelf een nieuwe sleutel te tekenen en een certificaat dat een oude ongedaan maakt aan te maken, of om gewoon een nieuw e-mail address toe te voegen (of een oude te verwijderen), maar zonder je geheime sleutel verlies je al deze macht hierover tot deze is beeindigt.
Nu is het tijd om je sleutel te sturen naar een IMC sleutelserver. Het maakt echt niet uit welke, omdat ze allen met elkaar in verband staan, neem er een die dicht bij jou zit en gebruik deze. Als deze stopt te werken, neem dan een andere. Type het volgende om je sleutel naar bijvoorbeeld de keys.indymedia.org server te versturen:
gpg --keyserver keys.indymedia.org --send-key <je sleutelid>
Wanneer je je vingerafdruk hebt gestuurd heb je een sleutelid ontvangen, het staat omschreven na 1024D/ en is ook de laatste 8 karakters van je vingeradruk. Nadat je deze stap succesvol hebt gedaan, is je sleutel daar voor anderen, klaar voor gebruik. Je kunt een vriend(in) zijn/haar sleutels of een nieuwe kopie van je eigen welke een vriend(in) heeft getekent ontvangen met het volgende commando:
gpg --keyserver keys.indymedia.org --recv-key <sleutelid>
Om een niveau van een vertrouwen aan te geven en een vriend(in)'s sleutel te tekenen (vriend als in iemand die je persoonlijk hebt ontmoet en je hebt geverifieerd dat hun sleutel klopt):
gpg --edit-key <sleutelid>
Gebruik vervolgens het menu om te "vertrouwen" en "tekenen" en dan "opslaan". Een laatste tip voor gebruik, om te voorkomen dat je elke keer --keyserver
moet typen kun je de GnuPG opties bestand veranderen en je sleutelserver er in zetten.
Gebruiken
De meest voorkomende plaats om GnuPG te gebruiken is samen met je e-mail client programma. Kijk voor frontends op http://www.gnupg.org/ om te kijken hoe je je client werkend kunt krijgen. Wanneer je standaard op web gebaseerd e-mail (Eng: webmail) gebruikt moet je het natuurlijk op de harde manier doen, of je kunt jezelf een echte e-mail service aanschaffen.
Om iets "manually" te versleutelen sla dit op als en text bestand en type vervolgens:
gpg --armor --encrypt <bestandsnaam> -r <sleuelid>
Dit zal een nieuw versleuteld bestand genaamt .asc aanmaken - om iets te ontcijferen naar je sleutel (iets versleutelen naar je eigen sleutel om te testen) type het volgende:
gpg --decrypt <bestandsnaam>
Je kunt een > redirect (of --output) om de ontcijferde data in een bestand te zetten of om het weer te geven in je shell.
Er zijn duizenden andere manieren, maar ik laat je daarvoor de manual lezen die bij GnuPG kwam om dat uit te vogelen.
Veel plezier, en alsjeblieft, laat je niet ontmoedigen door al mijn technogebabbel. Het is echt tamelijk makkelijk om het te gebruiken en de voordelen van het gebruik zijn de tijd om het te leren waard.
Misc
IMC Sleutelservers:
IMC Sleutelserver Netwerk Lijst:
IMC Sleutelserver website om sleutels te zoeken:
Bron in Engels:
http://docs.indymedia.org/edit/Sysadmin/GnuPG
http://lists.indymedia.org/mailman/public/keyservers/2002-March/000001.html
-- GoverDamnement - 08 Oct 2003