}
abonneren

Versleutelde bestanden versturen met Gpg4win en Kleopatra

Encryptie is een notoir moeilijk onderwerp. Iedereen maakt dagelijks onbewust gebruik van encryptie, zoals https. Maar er zijn niet veel mensen die bewust gegevens versleutelen. We leggen hier uit hoe dat werkt en hoe je die versleutelde bestanden versturen kunt.

De theorie achter asymmetrische encryptie is niet eenvoudig, maar er bestaat heel wat software die je het moeilijkste uit handen neemt. We gaan aan de slag met Gpg4win en Kleopatra. Er bestaat een open standaard voor encryptie van e-mail, OpenPGP genaamd. De bekendste software die momenteel OpenPGP ondersteunt, is de opensourcesoftware GNU Privacy Guard, waarvan de naam doorgaans wordt afgekort tot GnuPG of zelfs GPG.

GnuPG zelf is een commandline-programma, maar onder Windows kun je Gpg4win installeren, dat de Windows-versie van GnuPG en enkele bijbehorende grafische tools bevat. Download de nieuwste versie en installeer het programma. Je kunt Nederlands als taal instellen. Tijdens de installatie kun je kiezen welke extra tools je installeert. Vink alles aan behalve GPA; in plaats daarvan gebruiken we straks Kleopatra. Die draait op Windows en Linux.

Symmetrische encryptie met GPG

Dadelijk gaan we de grafische interface Kleopatra gebruiken, maar eerst illustreren we hoe je met het commandline-programma GPG symmetrische encryptie toepast. Maak in Kladblok een tekstbestand aan met een geheime boodschap. Sla het op onder de naam boodschap.txt in je persoonlijke map (C:\Users\gebruikersnaam). Typ daarna in de Opdrachtprompt van Windows de volgende opdracht in:

gpg --symmetric --cipher-algo AES256 boodschap.txt

Hiermee geef je aan GPG aan dat je symmetrische encryptie wilt toepassen met het algoritme AES-256. Je krijgt nu de vraag voor een ‘passphrase’ en nog een tweede keer om die te bevestigen. Daarna berekent GPG een sleutel uit deze wachtwoordzin en versleutelt het programma je bestand hiermee. Het resultaat wordt opgeslagen in het bestand boodschap.txt.gpg. Als je dit nu met Kladblok opent (klik er met rechts op in Verkenner en kies Openen met), zie je dat het onleesbaar is.

Let op: GPG laat het oorspronkelijke bestand boodschap.txt staan. Dat is misschien geen probleem als je het bestand louter versleutelt om het naar iemand anders te sturen terwijl je zelf het originele bestand wilt houden, maar als je GPG gebruikt om bestanden met gevoelige informatie op je computer te versleutelen, dien je daarna het oorspronkelijke bestand nog op een veilige manier te verwijderen. Dat valt buiten het bestek van dit artikel.

Decryptie gaat even eenvoudig:

gpg -d -o boodschap.txt boodschap.txt.gpg

Hiermee geef je aan dat je een bestand wilt ontsleutelen en het resultaat wilt opslaan onder de naam boodschap.txt.

Overigens slaat GnuPG je passphrase een tijdje op, zodat je het niet telkens weer hoeft in te voeren. Als je de cache met de huidige opgeslagen passphrase wilt legen, voer dan de volgende opdracht uit:

echo RELOADAGENT | gpg-connect-agent

Sleutelpaar aanmaken

Asymmetrische encryptie gebruik je vooral om bestanden uit te wisselen met anderen. We tonen hoe dat gaat in Kleopatra, een grafische interface voor GnuPG. Klik in het hoofdvenster van Kleopatra op Nieuw sleutelpaar. Vul dan je naam en e-mailadres in. In Geavanceerde instellingen kun je het algoritme voor de sleutels kiezen (standaard RSA), het gebruik van je sleutels (alleen om te ondertekenen en te versleutelen, of ook voor authenticatie en certificering) en de geldigheidsduur (standaard twee jaar). We raden aan om eerst gewoon de standaardwaardes te kiezen en met dit sleutelpaar wat te experimenteren voordat je een sleutelpaar aanmaakt dat je echt gaat gebruiken in je communicatie met anderen.

In het volgende venster kun je de parameters nog eens controleren, klik op Alle details tonen om ook de geavanceerde instellingen te zien. Klik daarna op Aanmaken. Nadat het sleutelpaar aangemaakt is, dien je een wachtwoordzin in te vullen. Denk hier goed over na: met deze wachtwoordzin wordt je geheime sleutel versleuteld, dus als deze niet sterk genoeg is en iemand je geheime sleutel te pakken krijgt, kan die deze kraken en zich voor jou uitgeven.

In de laatste stap kun je ook nog een reservekopie van je sleutelpaar maken. Je krijgt dan de vraag om je wachtwoordzin in te voeren. Klik tot slot op Finish om het aanmaken van het sleutelpaar af te sluiten.

Publieke sleutels uitwisselen

Nu dien je je publieke sleutel aan je contactpersonen te bezorgen. Dat doe je door in het hoofdvenster van Kleopatra je zojuist aangemaakte sleutel te selecteren, er met rechts op te klikken en Exporteren te kiezen. Je publieke sleutel wordt dan in een bestand met de extensie .asc opgeslagen. Bezorg dit bestand aan de ander.

Vraag aan de ander ook zijn publieke sleutel. Importeer die met een klik op Importeren en kies dan het bestand. Je krijgt de vraag om de vingerafdruk te controleren, zodat je zeker bent dat het de correcte publieke sleutel is. Klik op Ja en bekijk de vingerafdruk, een lang hexadecimaal getal zoals 056E 3C04 7E70 6EE2 6BE4 0182 A6FA 98B5 1565 3B68. Bel met de eigenaar en vraag hem de vingerafdruk te dicteren, of doe dat op een andere veilige manier.

Als de vingerafdruk correct is, vink je het gebruiker-ID aan en Ik heb de vingerafdruk geverifieerd en klik je op Next. Klik daarna op Certificeer: Kleopatra ondertekent dan de publieke sleutel van je contactpersoon met je eigen geheime sleutel om aan te duiden dat je deze vertrouwt.

Een boodschap versleutelen en ondertekenen is na al dit voorbereidingswerk kinderspel. Klik op Ondertekenen/versleutelen, kies het bestand, selecteer als welke identiteit je het bestand wilt ondertekenen en voor wie je het wilt versleutelen (vink Voor anderen versleutelen aan en kies dan de identiteit van de ontvanger) en klik op Ondertekenen / versleutelen. Het bestand met de extensie .gpg bezorg je aan de ontvanger.

De ontvanger klikt dan in Kleopatra op Ontcijferen/verifiëren en kiest het versleutelde bestand. Als alles goed is, krijgt hij te zien dat de handtekening geldig is. Klikt hij op Save all, dan wordt het ontsleutelde bestand opgeslagen.

Geschreven door: Koen Vervloesem op

Category: Workshop, Security

Tags: Privacy, Encryptie

Laatste Vacatures

Uitgelicht: Technisch Applicatiebeheerder - CGI