Harde Schijf Codering#

VeraCrypt (voorheen TrueCrypt)#

VeraCrypt is een gratis en Open Source schijfversleutelingssoftware voor Windows, macOS, en GNU/Linux. Het is de opvolger van TrueCrypt en dus aanbevolen, hoewel de volgende instructies ook op TrueCrypt van toepassing zouden moeten zijn.

Volg deze stappen om het programma te gebruiken met Nitrokey Storage 2 of Nitrokey Pro 2:

  1. Installeer de laatste versie van OpenSC, of download de PKCS#11 bibliotheek.

  2. Kies de bibliotheek in VeraCrypt onder Settings>Preferences>Security Token (locatie is afhankelijk van systeem, bijv. /usr/lib/opensc).

  3. Genereer een 64 Byte sleutelbestand via Tools>Keyfile Generator.

  4. Nu zou u in staat moeten zijn om het gegenereerde sleutelbestand te importeren via Tools>Manage Security Token Keyfiles. U moet de eerste sleuf kiezen ([0] User PIN). Het sleutelbestand wordt dan op de Nitrokey opgeslagen als ‘Privégegevensobject 1’ (PrivDO1).

  5. Hierna moet u het originele sleutelbestand op uw Computer veilig wissen!

  6. Nu kun je VeraCrypt gebruiken met de Nitrokey: Maak een container, kies het sleutelbestand op het apparaat als alternatief voor een wachtwoord.

Waarschuwing

Veiligheidsoverweging

Let wel dat VeraCrypt geen gebruik maakt van de volledige beveiliging die Nitrokey (en smartcards in het algemeen) bieden. In plaats daarvan wordt een sleutelbestand op de Nitrokey opgeslagen dat theoretisch door een computervirus kan worden gestolen nadat de gebruiker de PIN-code heeft ingevoerd.

Opmerking: Aloaha Crypt is gebaseerd op TrueCrypt/VeraCrypt maar zonder de beschreven beveiligingsbeperking.

Harde schijf-codering op Linux met LUKS/dm-crypt#

Hier zijn uitstekende instructies hoe u Nitrokey kunt gebruiken om uw harde schijf onder Linux te versleutelen met LUKS/dm-crypt. andere instructies.

Purism heeft een simpel script gemaakt om de Nitrokey/LibremKey toe te voegen als een manier om LUKS-partities te ontgrendelen (nog niet getest door Nitrokey).

Dit project heeft als doel het gebruik van LUKS te vergemakkelijken met de Nitrokey Pro of Storage gebaseerd op de Password Safe (nog niet getest door Nitrokey). Een beschrijving over het gebruik ervan op Gentoo kan hier gevonden worden.

Voor Arch Linux, zie initramfs-scencrypt.

Opslagcodering op GNU+Linux met EncFS#

EncFS is een eenvoudig te gebruiken programma voor versleutelde bestandssystemen en is gebaseerd op FUSE. U kunt deze stappen volgen om het te gebruiken met zeer lange wachtwoorden en Nitrokey Pro 2:

Initialisatie#

  1. Maak een sleutelbestand met willekeurige gegevens:

    $ dd bs=64 count=1 if=/dev/urandom of=keyfile
    
  2. Versleutel het sleutelbestand en gebruik de gebruikers-ID van uw Nitrokey

    $ gpg --encrypt keyfile
    
  3. Verwijder het sleutelbestand in duidelijke tekst:

    $ rm keyfile # you may want to use 'wipe' or 'shred' to securely delete the keyfile
    
  4. Maak een koppelpunt:

    $ mkdir ~/.cryptdir ~/cryptdir
    
  5. Maak de eigenlijke encryptie map

    $ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
    # There may appears an error message about missing permission of fusermount
    # This message can be ignored
    
  6. Ontkoppel het nieuwe bestandssysteem:

    $ fusermount -u ~/cryptdir
    

Gebruik#

  1. Mount versleuteld bestandssysteem en voer PIN van Nitrokey in:

    $ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
    
  2. Na gebruik, ontkoppel het bestandssysteem:

    $ fusermount -u ~/cryptdir
    

Storagecodering op Linux met ECryptFS#

eCryptfs is een bestandsgebaseerd transparant encryptiebestandssysteem voor Linux dat met Nitrokey kan worden gebruikt via een PKCS#11-stuurprogramma.

Zie `deze <http://tkxuyen.com/blog/?p=293>`_instructies:

  1. Importeer het certificaat en de sleutel naar de Nitrokey

    # Warning: This will delete existing keys on your Nitrokey!
    $ pkcs15-init --delete-objects privkey,pubkey --id 3 --store-private-key user@example.com.p12 --format pkcs12 --auth-id 3 --verify-pin
    
  2. Maak het bestand ~/.ecryptfsrc.pkcs11:

    $ editor ~/.ecryptfsrc.pkcs11
    
  3. Voer deze inhoud in:

    $ pkcs11-log-level=5 pkcs11-provider1,name=name,library=/usr/lib/opensc-pkcs11.so,cert-private=true
    $ openvpn --show-pkcs11-ids path to opensc-pkcs11 module
    Certificate
        DN: /description=Iv4IQpLO02Mnix9i/CN=user@example.com/emailAddress=user@example.com
        Serial: 066E04
        Serialized id: ZeitControl/PKCS\x2315\x20emulated/000500000c7f/OpenPGP\x20card\x20\x28User\x20PIN\x29/03
    
  4. Kopieer de geserialiseerde id voor later gebruik:

    $ ecryptfs-manager
    # This will show list option. Choose option "Add public key to keyring"
    # Choose pkcs11-helper
    # Enter the serialized ID of step 3 to PKCS#11 ID.
    

Als alternatief kunt u ESOSI proberen of deze stappen volgen met OpenSC en OpenVPN.

Bron van de gids: https://www.nitrokey.com/documentation/applications#a:hard-disk-encryption