Mi piace il wiki di crittografia del disco da valinux . È ragionevole presumere che la maggior parte degli schemi di crittografia del disco funzionino in modo molto simile e possa essere implementata interamente sulla base di standard aperti ben stabiliti.
Vorrei dire che se si scopre qualcosa di proprietario in uno schema di crittografia del disco, stare lontano da esso in quanto potrebbe benissimo nascondere una backdoor. PBKDF2 è una funzione di derivazione della chiave abbastanza popolare e basata su standard. L'algoritmo AES è probabilmente l'algoritmo di crittografia preferito, preferibilmente con 256 bit, e se vuoi una delle sue varianti più forti, cerca GCM.
Copiato alcuni diagrammi informativi di seguito dal wiki.
╭┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈╮ ╭┈┈┈┈┈┈┈┈┈┈┈╮
┊ mount passphrase ┊━━━━━⎛key derivation⎞━━━▶┊ mount key ┊
╰┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈╯,───⎝ function ⎠ ╰┈┈┈┈┈┬┈┈┈┈┈╯
╭──────╮ ╱ │
│ salt │───────────´ │
╰──────╯ │
╭─────────────────────╮ ▼ ╭┈┈┈┈┈┈┈┈┈┈┈┈╮
│ encrypted master key│━━━━━━━━━━━━━━━━━━━━━━(decryption)━━━▶┊ master key ┊
╰─────────────────────╯ ╰┈┈┈┈┈┈┈┈┈┈┈┈╯
╭┈┈┈┈┈┈┈┈┈┈┈┈╮
┊ master key ┊
file on disk: ╰┈┈┈┈┈┬┈┈┈┈┈┈╯
┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┐ │
╎╭───────────────────╮╎ ▼ ╭┈┈┈┈┈┈┈┈┈┈╮
╎│ encrypted file key│━━━━(decryption)━━━▶┊ file key ┊
╎╰───────────────────╯╎ ╰┈┈┈┈┬┈┈┈┈┈╯
╎┌───────────────────┐╎ ▼ ┌┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┐
╎│ encrypted file │◀━━━━━━━━━━━━━━━━━(de/encryption)━━━▶┊ readable file ┊
╎│ contents │╎ ┊ contents ┊
╎└───────────────────┘╎ └┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┘
└ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┘
In poche parole:
- Passphrase che dovrai ricordare e inserire per montare il disco o la partizione.
- La passphrase sfornava la funzione di derivazione della chiave per generare la chiave principale. Dovrebbero esserci iterazioni sufficienti tali da richiedere alla funzione ~ 1s di elaborare sul tuo computer.
- La chiave master viene quindi utilizzata per decrittografare un file di archivio chiavi, che contiene una chiave file effettivamente utilizzata per decrittografare o crittografare i dati del disco.
Q. Perché non disporre di una chiave master che crittografa direttamente i dati, perché separare la chiave master e la chiave file?
A. Se decidi di modificare la passphrase, devi quindi crittografare nuovamente il tuo disco per lo schema della chiave principale. D'altra parte, se si dispone di una chiave master e file separata, se si modifica la passphrase è necessario solo crittografare nuovamente la chiave del file.