Als je versleuteld mailt is het belangrijk dat je je sleutels goed beheert. Hier leggen we uit wat sleutels zijn, waar ze voor dienen en hoe je ermee om kunt gaan.

Indien je berichten en/of bestanden gaat versleutelen (bijvoorbeeld bij e-mail met PGP) is het beheren van de bijbehorende sleutelparen van groot belang. PGP is de officiele naam en GPG of GnuPG wordt gebruikt voor de open source variant van de software.

In dit advies geven we uitleg wat de sleutels betekenen en geven we ideeën en tips hoe om te gaan met deze sleutelparen. Als begrip voor publieke en geheime sleutels wordt Public Key Infrastructure (PKI) gebruikt; dat is breder dan alleen PGP. In dit stuk houden we alleen rekening met PGP.

Een sleutelpaar heeft meestal een bepaalde levensduur en het is verstandig om eens in de paar jaar een nieuw sleutelpaar aan te maken.

Inleiding

In PGP komen 3 sleutels voor:

  • De publieke sleutel. Deze publiceer je zelf of hij wordt voor je gepubliceerd, afhankelijk van de software die je gebruikt.
  • De geheime sleutel (ook wel privésleutel genoemd). Deze is alleen van jou. Het is belangrijk dat je deze geheim houdt.
  • De sessie sleutel. Deze wordt door de software voor je gemaakt en wordt maar een keer gebruikt. In de praktijk zie je deze als gebruiker niet en hij is voor elk bericht weer anders.

In tegenstelling tot je huissleutels, waarvan je er maar een nodig hebt om de deur open en dicht te doen, heb je bij digitale sleutels twee verschillende nodig. Namelijk een publieke sleutel om iets te versleutelen (het slot dichtdraaien), en een geheime sleutel om het weer leesbaar te maken (het slot opendraaien).

PGP schematisch uitgelegd

Publieke sleutel

De publieke sleutel kun je onbeperkt publiceren en wordt op zogenaamde sleutelservers geplaatst. De publieke sleutel heeft twee belangrijke functies die hier worden uitgelegd.

De eerste functie is wat ingewikkeld. Bij elk bericht die gestuurd wordt, wordt een sessiesleutel (zie uitleg verderop in dit bericht) gegenereerd. Deze wordt gebruikt om berichten en bestanden te versleutelen. Met de publieke sleutel wordt de sessiesleutel versleuteld en meegestuurd met het bericht. Alleen degene met de geheime sleutel kan het ontcijferen.

De tweede functie is het bepalen of het bericht wel is ondertekend door degene die zegt dat hij is. Dit is een soort van digitale tegenhanger van een handtekening op een papier. Hiermee kan de ontvanger bepalen of het bericht wel echt van de verzender afkomstig is en het niet door anderen is veranderd.

Geheime sleutel

Het geheime deel van jouw sleutelpaar is, zoals het al aangeeft, geheim. Dat moet je altijd zo houden. Deze geheime sleutel heeft twee belangrijke functies die hier worden uitgelegd.

De eerste functie is om de berichten weer leesbaar te maken. Jij kunt met jouw geheime sleutel de aan jou verstuurde versleutelde sessiesleutels weer bruikbaar maken en zo de berichten weer leesbaar. Op een geheime sleutel zit meestal een wachtwoord zodat je bij het ontsleutelen van het bericht een wachtwoord moet invoeren om de sleutel te kunnen gebruiken.

De tweede functie van de geheime sleutel is het digitaal ondertekenen van de e-mail. Alleen de eigenaar van de geheime sleutel kan het bericht ondertekenen. Er wordt een uniek kenmerk van het bericht gemaakt en dat kenmerk wordt versleuteld met de geheime sleutel. Het versleutelde kenmerk wordt meegestuurd met het bericht en iedereen die de publieke sleutel van jou bezit kan dan controleren of het bericht niet door anderen aangepast is en echt van jou afkomstig is.

Dit zijn twee zeer belangrijke functies die het enorm belangrijk maken dat je deze sleutel ook echt geheim houdt, zodat berichten alleen door jou gelezen of ondertekend kunnen worden. Zorg er voor dat de geheime sleutel alleen beschikbaar is op de plekken waar je hem nodig hebt, bijvoorbeeld op de computer waar je je e-mail op leest. Op deze computer installeer je de nodige applicaties en zorg je er voor dat er een goed wachtwoord op de sleutel zit.

Sessiesleutel

Om berichten te versleutelen wordt er voor elk bericht die je verstuurt een sessiesleutel gegenereerd. Van deze sessiesleutel zie je als gebruiker niets – dit wordt door de software afgehandeld. Je hoeft er ook niets mee te doen want deze sleutel wordt eenmalig gebruikt en wordt met de publieke sleutel van de ontvanger versleuteld.

De versleutelde sessiesleutel wordt meegestuurd naar de ontvanger en alleen de eigenaar van de geheime sleutel kan deze ontsleutelen en gebruiken.

Beheer van de sleutels

Het beheer van sleutelparen bestaat uit een paar belangrijke onderdelen. Sleutelparen genereren; het publiceren van je publieke sleutel; een backup maken en ongeldig maken van je sleutelpaar. Deze stappen zijn belangrijk en het is te adviseren om de volgende stappen goed te begrijpen voordat je aan de slag gaat met versleuteld e-mailen.

Bij PGP heeft elk sleutelpaar een nummer, genaamd Key ID. Met dit nummer wordt onder andere door de applicaties gewerkt om sleutels te zoeken en te gebruiken. Een sleutelnummer bestaat uit 16 of 8 (oudere weergave) cijfers en letters met daarvoor 0x. Voorbeeld is 0x069FF062F1E7EC18 of 0xF1E7EC18.

Een sleutelpaar heeft ook een uniek kenmerk, fingerprint genoemd. Dit is een verkorte, beter leesbare weergave van een sleutelpaar. Hiermee kun je makkelijker controleren of de sleutel die je van een persoon ontvangt de juiste is. Een voorbeeld van een PGP fingerprint is 34DA FA43 C122 EA67 9F78 4CFA 069F F062 F24D DF38.

Verlies van sleutelparen en je wachtwoord is definitief en kan niet worden teruggedraaid. Bij verlies van je geheime sleutel zijn alle versleutelde berichten voorgoed onleesbaar.

Sleutels genereren

Het genereren van sleutels gebeurt in de applicatie waar je de versleuteling gebruikt. Bijvoorbeeld je mailclient. Belangrijk hierbij is het bepalen van de juiste lengte. Op dit moment is 2048 bits voldoende, maar als je klaar wilt zijn voor de toekomst kun je beter kiezen voor 4096 bits. Eenmaal een PGP sleutelpaar gegenereerd, kunnen de sleutels ook in andere applicaties gebruikt worden, mits deze voor PGP geschikt zijn.

Bij het genereren van de sleutels worden er twee sleutels gemaakt. Eén geheime en daarna één bijpassende publieke sleutel. Zonder de ene heeft de andere sleutel geen nut.

Publiceren van je publieke sleutel

Nadat je je sleutels hebt gegenereerd, is het verstandig het publieke deel te publiceren op een sleutelserver. Hierdoor heeft iedereen die jou een bericht wil sturen de mogelijkheid de publieke sleutel op te vragen. Indien je jouw publieke sleutel op een van de sleutelservers plaatst kan iedereen deze downloaden en gebruiken. Dit is niet noodzakelijk maar maakt het gebruik van PGP wel eenvoudiger.

Voorbeelden van sleutelservers zijn:

  • de Surfnet sleutelserver
  • de MIT sleutelserver
  • de SKS sleutelservers

Een back-up maken van je sleutels

Net als bij de sleutels van je huis, is verlies of diefstal funest. Bij verlies kom je je huis niet meer in en bij diefstal kan een ander jouw huis in. Datzelfde geldt voor digitale sleutels. Verlies van je geheime sleutel zorgt er voor dat je alle versleutelde berichten die aan jou geadresseerd zijn niet meer kunt lezen. En bij diefstal kan iemand anders jouw berichten lezen. En dat is ook niet wat je wilt.

Een goede back-up van je sleutels en het bijbehorende wachtwoord is daarom erg belangrijk. Hieronder vind je een aantal tips om dat goed uit te voeren.

  • Zorg voor een back-up op een externe harde schijf
  • Sla de back-up bestanden op op een systeem dat niet is aangesloten op het internet, bijvoorbeeld een usb-stick
  • Sla altijd je publieke en geheime sleutel gezamenlijk op
  • Bewaar het bijbehorende wachtwoord veilig en niet samen met de sleutelbestanden
  • Gebruik géén clouddiensten zoals Dropbox of Google Drive om deze bestanden op te slaan
  • Controleer regelmatig of de bestanden nog leesbaar zijn (bijvoorbeeld eens per jaar)
  • Gebruik KeePass om de sleutels en het wachtwoord veilig op te slaan

Ongeldig maken van sleutelparen

Sleutels kunnen ook ongeldig worden gemaakt. Dat is niet terug te draaien. In de PGP wereld heet dat ‘Revoking’. Er zijn een paar redenen waarbij het verstandig is om je sleutels ongeldig te verklaren. Bijvoorbeeld:

  • Verlies of diefstal van sleutels
  • Je genereert een nieuw sleutelpaar
  • Je stopt met het gebruik van versleuteling

Na het ongeldig maken van je sleutel moet je het opnieuw publiceren zodat iedereen kan zien dat de sleutel niet meer geldig is. Om de sleutel ongeldig te maken is de geheime sleutel noodzakelijk, of het intrekkingscertificaat dat je bij generatie hebt aangemaakt.

Aan de slag

In deze Toolbox hebben we de voor de verschillende computers de tools overzichtelijk neergezet.

WindowsMac OSXLinux

Naast computers kun je ook op de mobile en tablet jouw mail versleutelen.

AndroidApple iOS

Uitleg over PGP (GnuPG): Gnu PG filmpjes (Engels)