abonneren

Nitrokey Pro 2 review - Beveilig je digitale leven

Wie wat meer aandacht voor veiligheid heeft, slaat zijn encryptiesleutels en wachtwoorden niet op zijn pc op en maakt gebruik van tweefactorauthenticatie. De Nitrokey Pro 2 maakt dit mogelijk door de sleutels in hardware op te slaan. We legden deze kleine cryptostick op de pijnbank, en kunnen ondertussen niet meer zonder. Je leest erover in deze Nitrokey Pro 2 review.

Nitrokey Pro 2

9
Score
90
Score: 90
  • Pluspunten
  • Opensource firmware en hardware
  • Veel mogelijkheden
  • Versleuteld e-mailen met Thunderbird/Enigmail werkt out-of-the-box
  • Minpunten
  • Kan maar maximum 16 wachtwoorden opslaan
  • Geen browserintegratie
  • Incompatibiliteit tussen GnuPG en PKCS#11

Er zijn drie vormen van authenticatie die doorgaans zonder speciale hardware werken: wachtwoorden, encryptiesleutels en tweefactorauthenticatie met een ‘one-time password’. De eenvoudigste manier om hiermee te werken is respectievelijk je wachtwoord zelf onthouden, je encryptiesleutel op je pc opslaan (in het ideale geval is die sleutel zelf versleuteld via een wachtwoord) en een app voor tweefactorauthenticatie gebruiken zoals Google Authenticator of Authy.

Deze drie manieren hebben echter hun zwakheden. Mensen zijn notoir slecht in het onthouden van sterke wachtwoorden. Encryptiesleutels die op een pc opgeslagen zijn, vormen een risico omdat je niet alle software op je pc kunt vertrouwen. En je smartphone als tweede factor gebruiken is om dezelfde reden een risico omdat je niet alle apps op je smartphone kunt vertrouwen.

De Nitrokey Pro 2 van het Duitse bedrijf Nitrokey biedt een oplossing voor al deze zwakheden: je slaat je sleutelparen voor rsa of ecc en sleutels om eenmalige wachtwoorden te genereren in het kleine usb-stickje op en daar komen ze op geen enkel moment uit. Het genereren van geheime sleutels en alle rekenwerk ermee gebeurt in de Nitrokey zelf. Ook wachtwoorden kun je erin opslaan, zodat die niet de hele tijd op je pc staan.

Het apparaatje is met een pincode beveiligd en is ook beschermd tegen brute-force aanvallen. Niet alleen de software, maar ook de firmware en (een groot deel van) de hardware zijn opensource. Een van de versies van de Nitrokey heeft ook een onafhankelijk beveiligingsassessment doorstaan. Wij hebben de Nitrokey Pro 2 (49 euro) getest, maar er zijn ook nog andere modellen, bijvoorbeeld met versleutelde opslag erbij of met alleen ondersteuning voor FIDO U2F.

Aan de slag met Nitrokey 2 Pro

Wij gingen met de Nitrokey Pro 2 aan de slag op de mei 2019-update van Windows 10 en op Ubuntu 19.04. Het project biedt downloads aan van de Nitrokey App, ook voor macOS. Wij downloadden versie 1.4 van de GitHub-pagina met releases. Je hoeft het programma niet te installeren, je kunt het gewoon zo uitvoeren.

Als je het programma start en dan de Nitrokey in een usb-poort van je pc steekt, wordt die automatisch herkend als smartcard. Het eerste wat je dient te doen, is in Nitrokey App de standaard User PIN (123456) en Admin PIN (12345678) wijzigen. Dat doe je in het menu Configure. De User PIN dient minstens 6 cijfers lang te zijn (maximum 20) en de Admin PIN minstens 8 cijfers (eveneens maximum 20).

We staan even stil bij die pincodes, omdat die cruciaal zijn voor de beveiliging van je Nitrokey. Met de User PIN ontgrendel je de Nitrokey. Daarna krijg je toegang tot je wachtwoorden, onderteken en versleutel je data en vraag je eenmalige wachtwoorden op, de dagelijkse taken zeg maar. De Admin PIN heb je nodig voor beheertaken, zoals sleutels genereren of inladen.

Als je drie keer de verkeerde User PIN intypt, wordt de interne smartcard van de Nitrokey geblokkeerd. Je kunt dan alleen een nieuwe pincode kiezen door de Admin PIN in te typen. En als de Admin PIN drie keer verkeerd intypt, wordt de smartcard onklaar gemaakt: je Nitrokey is dan onbruikbaar en de erin opgeslagen sleutels zijn onbereikbaar.

Wachtwoordkluis

In het hoofdvenster van Nitrokey App krijg je toegang tot de wachtwoordkluis met een klik op Unlock Password Safe. Je dient daarvoor je User PIN in te typen. Daaronder vind je in het hoofdvenster overigens Lock Device, waarmee je de toegang weer intrekt.

In het tabblad Password Safe kun je nu bij Slot voor een van de zestien wachtwoordslots kiezen. Dit is voor velen te weinig om als wachtwoordkluis van al hun wachtwoorden te dienen, maar het is voldoende voor je kritieke wachtwoorden, bijvoorbeeld van je e-mail, je account bij PayPal of bij een cryptobeurs. Voor de rest kun je dan een softwaregebaseerde wachtwoordkluis gebruiken, zoals KeePass of Bitwarden.

Je geeft het slot dan een naam en vult een login en wachtwoord in. De naam kan maximum 11 tekens lang zijn, de login maximum 32 tekens en het wachtwoord maximum 20 tekens. Je kunt Nitrokey App ook een willekeurig wachtwoord laten genereren.

Er is helaas niet voorzien in browserintegratie. Je dient zelf Nitrokey App te openen, het juiste account in Menu / Passwords te selecteren en op het gewenste account te klikken. Nitrokey App kopieert het wachtwoord dan naar het klembord, zodat je het in de website kunt plakken. Na een minuut wordt het wachtwoord uit het klembord verwijderd.

Tweefactorauthenticatie

Naast een kleine wachtwoordkluis biedt de Nitrokey ook plaats aan 15 totp-slots en 3 hotp-slots. Dat zijn de algoritmes voor eenmalige wachtwoorden die in veel systemen voor tweefactorauthenticatie toegepast worden. Totp (Time-based One-time Passwords) is de techniek achter de meeste bekende implementaties van tweefactorauthenticatie, bijvoorbeeld bij Google, Twitter, Facebook, Dropbox, Microsoft en Nextcloud. Kijk op deze 2FA List of je favoriete website erbij staat. Voor de meeste mensen zijn 15 totp-sleutels ruimschoots voldoende.

Het is vrij eenvoudig om de Nitrokey voor tweefactorauthenticatie bij Google in te stellen; voor andere websites zal dat gelijkaardig werken. Op de pagina Beveiliging van je Google-account klik je onder Inloggen bij Google op Authenticatie in twee stappen om tweefactorauthenticatie in te schakelen. Je dient eerst een tweede factor zoals je telefoon in te stellen.

Daarna dien je onder het kopje Alternatieve tweede factor instellen voor Authenticator-app te kiezen en eronder op Instellen te klikken. We gaan die app niet gebruiken, maar de Nitrokey maakt van hetzelfde protocol gebruik, dus die is volledig compatibel met deze methode.

In de volgende stap geef je dan aan dat je een Android-telefoon hebt en daarna dat je de getoonde qr-code niet kunt inscannen. Je krijgt nu een sleutel in de vorm van een tekenreeks zoals ‘76ny iyup z2ch qx5u 3vji msot fgqy w3wx’ te zien. Deze sleutel is de ‘startcode’ op basis waarvan de eenmalige wachtwoorden gegenereerd worden.

In Nitrokey App kies je nu in het tabblad OTP Slot Configuration een vrij totp-slot, geef je het een naam en plak je de code in het veld naast Secret Key. Nadat je onderaan rechts op Save hebt geklikt en je Admin PIN hebt ingevoerd, kan je Nitrokey totp-codes voor je Google-account genereren.

Zodra je van Google nu de vraag om een totp-code krijgt, klik je in Nitrokey App op Menu / Passwords en dan op de gewenste account. Nitrokey App kopieert de totp-code dan naar het klembord, zodat je ze eenvoudig in je browser kunt plakken. Na twee minuten wordt de code uit je klembord verwijderd.

OpenPGP en S/MIME

Het laatste wat we met de Nitrokey wilden doen, is e-mails versleutelen en ondertekenen via asymmetrische encryptie. Ook hierin blinkt de Nitrokey uit, maar dit vereist wat voorbereidingswerk. Allereerst dien je een keuze te maken uit twee manieren: GnuPG (met het OpenPGP-protocol) of S/MIME (met X.509-certificaten, hetzelfde type als voor TLS/SSL).

De tools die je nodig hebt om met OpenPGP of S/MIME te werken, zijn niet helemaal compatibel. De makers van Nitrokey raden daarom aan om ze niet allebei tegelijk te gebruiken. En als je je Nitrokey met een PKCS#11-driver (voor S/MIME) geïnitialiseerd hebt, kun je de sleutels niet meer met GnuPG gebruiken. Ze raden daarom aan om je sleutels met GnuPG aan te maken.

Download Gpg4win, dat de Windows-versie van GnuPG en enkele bijbehorende tools bevat. Tijdens de installatie kun je kiezen welke extra tools je installeert. Wij lieten het bij de standaardkeuzes.

In de documentatie van nitrokey spreken de makers nog over het gebruik van GNU Privacy Assistant (GPA), maar de ontwikkelaars van Gpg4win raden het standaard meegeïnstalleerde Kleopatra aan.

Hoewel Kleopatra nergens in de documentatie van Nitrokey vermeld staat, vonden we in het forum wel verwijzingen. Het programma blijkt de Nitrokey out-of-the-box te ondersteunen. Na het menu Hulpmiddelen / Smartcards beheren geopend te hebben, kregen we na enkele keren op F5 te drukken de informatie over onze Nitrokey te zien, zoals het serienummer.

Ook de rest wijst zichzelf uit. Met een klik op Nieuwe sleutels genereren creëren we nieuwe OpenPGP-sleutelparen voor handtekeningen, sleutels en authenticatie. Dat gebeurt op de Nitrokey zelf, dus de geheime sleutel van elk sleutelpaar verlaat het apparaatje nooit.

Versleuteld e-mailen

Zodra we OpenPGP-sleutels op de Nitrokey hebben, kunnen we die voor e-mailversleuteling gebruiken. Dat kan in principe met elk programma dat OpenPGP ondersteunt. Wij probeerden dit uit met de e-mailclient Thunderbird uit de Mozilla-stal in samenwerking met de extensie Enigmail. Die is vanuit het menu Add-ons van Thunderbird te installeren.

Na een herstart van Thunderbird vind je Enigmail in zijn eigen menu. Klik daarin op Sleutelbeheer. Als je voorbereiding met Kleopatra correct gebeurd is, zie je hier je publieke sleutel. Klik je in dit venster op Bestand / Smartcard beheren…, dan krijg je informatie over je Nitrokey te zien. Dat is het teken dat je Nitrokey herkend is, en dat je aan de slag kunt gaan met Enigmail.

Enigmail werkt vanzelf met je Nitrokey samen. Het enige wat je nog hoeft te doen, is in de instellingen van je e-mailaccount OpenPGP-ondersteuning inschakelen. Wanneer je daarna een e-mail verstuurt en daarvoor kiest of dat in de instellingen als standaardgedrag ingesteld hebt, wordt die automatisch met de geheime sleutel op je Nitrokey ondertekend. Je krijgt dan eerst de vraag om je pincode in te voeren.

En ook als je een e-mail ontvangt die versleuteld is met je publieke sleutel, handelt Enigmail dit automatisch af: je krijgt weer de vraag om je pincode en de e-mail wordt dan met je bijbehorende geheime sleutel ontcijferd. Daarbij gebeuren alle bewerkingen op je Nitrokey zelf.

Conclusie

De Nitrokey Pro 2 is een handig stukje hardware waarmee je je beveiligingsniveau in één keer stevig opkrikt. De Nitrokey App ziet er wat gedateerd uit, maar werkt in de praktijk heel handig als toegangspoort tot de wachtwoordkluis en otp-generator.

Het is jammer dat de ingebouwde wachtwoordkluis maar plaats voor 16 wachtwoorden heeft. Ook de incompatibiliteit tussen GnuPG en PKCS#11 kan in sommige situaties wat roet in het eten gooien. Dat is niet de fout van de Nitrokey; maar voor sommige taken heb je GnuPG nodig en voor andere PKCS#11, en dat is dan wat lastig.

Maar het grootste pluspunt is dat de Nitrokey zich als een OpenPGP-smartcard gedraagt in het handige formaat van een usb-stick. De integratie met GnuPG en Thunderbird in combinatie met Enigmail werkt feilloos. Voor wie versleuteld e-mailt en dat volgens het boekje wil doen, is de Nitrokey Pro 2 een no-brainer.

Geschreven door: Koen Vervloesem op

Category: Review, Security

Tags: Usb, 2fa

Laatste Vacatures