Crittografia del disco rigido#

(Nitrokey Storage 2 - Linux)

VeraCrypt (ex TrueCrypt)#

VeraCrypt è un software di crittografia del disco gratuito e Open Source per Windows, macOS e GNU/Linux. È il successore di TrueCrypt e quindi raccomandato, anche se le seguenti istruzioni dovrebbero applicarsi anche a TrueCrypt.

Seguite questi passi per usare il programma con Nitrokey Storage 2 o Nitrokey Pro 2:

  1. Installare l’ultima versione di ` OpenSC <https://github.com/OpenSC/OpenSC/wiki>`_, o scaricare la ` libreria <http://smartcard-auth.de/download-en.html>`_ PKCS#11.

  2. Scegli la libreria in VeraCrypt sotto Settings>Preferences>Security Token (la posizione dipende dal sistema, per esempio /usr/lib/opensc).

  3. Genera un file chiave di 64 byte tramite Tools>Keyfile Generator.

  4. Ora dovresti essere in grado di importare il file chiave generato tramite Tools>Manage Security Token Keyfiles. Dovresti scegliere il primo Slot ([0] User PIN). Il keyfile viene poi memorizzato sulla Nitrokey come “Private Data Object 1” (PrivDO1).

  5. Dopo questo dovreste cancellare il file chiave originale sul vostro computer in modo sicuro!

  6. Ora puoi usare VeraCrypt con la Nitrokey: crea un contenitore, scegli il keyfile sul dispositivo come alternativa alla password.

Avvertimento

Considerazioni sulla sicurezza

Si prega di notare che VeraCrypt non fa uso di tutta la sicurezza che Nitrokey (e le smart card in generale) offrono. Invece memorizza un file chiave sulla Nitrokey che teoricamente potrebbe essere rubato da un virus informatico dopo che l’utente ha inserito il PIN.

Nota: Aloaha Crypt è basato su TrueCrypt/VeraCrypt ma senza la limitazione di sicurezza descritta.

Crittografia del disco rigido su Linux con LUKS/dm-crypt#

Ecco ` ottime istruzioni <http://blog.kumina.nl/2010/07/two-factor-luks-using-ubuntu/>`_ su come usare Nitrokey per criptare il vostro disco fisso sotto Linux con LUKS/dm-crypt. ` altre istruzioni <https://wiki.ubuntu.com/SmartCardLUKSDiskEncryption>`_.

Purism ha creato un semplice script per aggiungere la Nitrokey/LibremKey come un modo per sbloccare le partizioni LUKS (non ancora testato da Nitrokey).

Questo progetto mira a facilitare l’uso di LUKS con Nitrokey Pro o Storage basato su Password Safe (non ancora testato da Nitrokey). Una descrizione su come usarlo su Gentoo può essere trovata ` qui <https://amedeos.github.io/gentoo/nitrokey/2019/01/21/gentoo-nitrokey-luks.html>`_.

Per Arch Linux, vedere initramfs-scencrypt.

Crittografia dello storage su GNU+Linux con EncFS#

EncFS è un’utilità semplice per i file system criptati ed è basata su FUSE. Potete seguire questi passi per usarlo con password molto lunghe e Nitrokey Pro 2:

Inizializzazione#

  1. Creare un file chiave con dati casuali:

$ dd bs=64 count=1 if=/dev/urandom of=keyfile
  1. Crittografa il file della chiave e usa lo User-ID della tua Nitrokey

$ gpg --encrypt keyfile
  1. Rimuovere il file chiave in chiaro:

$ rm keyfile # you may want to use 'wipe' or 'shred' to securely delete the keyfile
  1. Creare il punto di montaggio:

$ mkdir ~/.cryptdir ~/cryptdir
  1. Creare la cartella di crittografia vera e propria

$ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
# There may appears an error message about missing permission of fusermount
# This message can be ignored
  1. Smontare il nuovo file system:

$ fusermount -u ~/cryptdir

Uso#

  1. Monta il file system criptato e inserisci il PIN di Nitrokey:

$ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
  1. Dopo l’uso, smontate il file system:

$ fusermount -u ~/cryptdir

Crittografia dello storage su Linux con ECryptFS#

eCryptfs è un file system di crittografia trasparente per Linux che può essere usato con Nitrokey attraverso un driver PKCS#11.

Vedi ` queste <http://tkxuyen.com/blog/?p=293>`_ istruzioni:

  1. Importare il certificato e la chiave in 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
  1. Create il file ~/.ecryptfsrc.pkcs11:

$ editor ~/.ecryptfsrc.pkcs11
  1. Inserisci questo contenuto:

$ 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
  1. Copia l’id serializzato per un uso successivo:

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

In alternativa, provate ESOSI o seguite questi passi usando OpenSC e OpenVPN.

Fonte della guida: https://www.nitrokey.com/documentation/applications#a:hard-disk-encryption