Šifrování pevného disku

Compatible Nitrokeys

3A/C/Mini

Passkey

HSM 2

Pro 2

FIDO2

Storage 2

Start

U2F

active

inactive

active

active

inactive

active

active

inactive

VeraCrypt (dříve TrueCrypt)

VeraCrypt je svobodný software s otevřeným zdrojovým kódem pro šifrování disků v systémech Windows, MacOS a GNU/Linux. Je nástupcem TrueCryptu, a proto je doporučován, i když následující pokyny by měly platit i pro TrueCrypt.

Follow these steps to use the program with Nitrokey Storage 2 or Nitrokey Pro 2:

  1. Nainstalujte nejnovější verzi OpenSC nebo si stáhněte Knihovnu PKCS#11.

  2. Choose the library in VeraCrypt under Settings>Preferences>Security Token (location depends on system, e.g. /usr/lib/opensc).

  3. Vygenerujte 64bajtový soubor s klíčem pomocí nástroje Tools>Keyfile Generator.

  4. Now you should be able to import the generated key file via Tools>Manage Security Token Keyfiles. You should choose the first Slot ([0] User PIN). The keyfile is then stored on the Nitrokey as Private Data Object 1 (PrivDO1).

  5. Poté byste měli bezpečně vymazat původní soubor s klíčem z počítače!

  6. Nyní můžete VeraCrypt používat s Nitrokey: Vytvořte kontejner, vyberte soubor s klíčem v zařízení jako alternativu k heslu.

Varování

Bezpečnostní hledisko

Please note that VeraCrypt doesn’t make use of the full security which Nitrokey (and smart cards in general) offer. Instead it stores a keyfile on the Nitrokey which theoretically could be stolen by a compromised host, since the Private Data Object 1 is not protected by the Nitrokey’s PIN.

Šifrování pevného disku v systému Linux pomocí LUKS/dm-crypt

Nastavení šifrování disku LUKS provedete podle našeho průvodce:

Purism has created a simple script to add the Nitrokey/LibremKey as a way to unlock LUKS partitions (not tested by Nitrokey yet).

Tento projekt má za cíl usnadnit používání LUKS s Nitrokey Pro nebo úložištěm založeným na Password Safe (zatím netestováno Nitrokey). Popis použití v systému Gentoo najdete zde.

Pro Arch Linux viz initramfs-scencrypt.

Šifrování úložiště v systému GNU+Linux pomocí systému EncFS

EncFS is an easy to utlity for encrypted file systems and it is based on FUSE. You may follow these steps to use it with very long passwords and Nitrokey Pro 2.

Inicializace

  1. Vytvoření souboru s klíčem s náhodnými daty:

    $ dd bs=64 count=1 if=/dev/urandom of=keyfile
    
  2. Zašifrujte soubor s klíčem a použijte ID uživatele vašeho klíče Nitrokey.

    $ gpg --encrypt keyfile
    
  3. Odstranění souboru s klíčem v čistém textu:

    $ rm keyfile # you may want to use 'wipe' or 'shred' to securely delete the keyfile
    
  4. Vytvoření přípojného bodu:

    $ mkdir ~/.cryptdir ~/cryptdir
    
  5. Vytvoření skutečné šifrovací složky

    $ 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. Odpojte nový souborový systém:

    $ fusermount -u ~/cryptdir
    

Použití

  1. Připojte zašifrovaný souborový systém a zadejte PIN kód Nitrokey:

    $ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
    
  2. Po použití systém souborů odpojte:

    $ fusermount -u ~/cryptdir
    

Šifrování úložiště v systému Linux pomocí systému ECryptFS

eCryptfs je souborový transparentní šifrovací systém pro Linux, který lze používat s Nitrokey prostřednictvím ovladače PKCS#11.

Viz těchto pokynů:

  1. Import certifikátu a klíče do aplikace 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. Vytvořte soubor ~/.ecryptfsrc.pkcs11:

    $ editor ~/.ecryptfsrc.pkcs11
    
  3. Zadejte tento obsah:

    $ 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. Zkopírujte serializované id pro pozdější použití:

    $ 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.
    

Případně zkuste ESOSI nebo postupujte podle následujících kroků pomocí OpenSC a OpenVPN.

Zdroj příručky: https://www.nitrokey.com/documentation/applications#a:hard-disk-encryption