Questa domanda mi porta a credere che tu sia un po 'confuso su come i dati vengano archiviati sulle unità stesse, quindi inizierò a toccarli per primi.
Tipo di filesystem : ext3
, NTFS
ecc. non sono altro che tipi di file system. Il tipo di file system utilizzato (nella maggior parte dei casi) ha un impatto zero sulla capacità di cancellare in modo sicuro l'unità, poiché in qualsiasi operazione di cancellazione sicura, verrà annullata.
Come probabilmente sai, il solo tasto cancella non cancella lo spazio sul disco. Contrassegna semplicemente l'area del disco come "vuota" e consente di scrivere nuovi dati nell'area. Pensalo come un cubicolo:
| Joe | James | | Amy |
Puoi vedere il cubicolo vuoto tra James e Amy. Questo è lo spazio non toccato . Ora diciamo che James è stato licenziato. Quindi pulisce il suo cubicolo e se ne va - ma lo spazio che ha usato è solo vuoto - e non non toccato . Questa è una distinzione importante:
| Joe | *empty* | | Amy |
Perché? Questo perché quando un nuovo dipendente si unisce (disegnando parallelismi tra i nuovi dati scritti sul disco qui), il nuovo dipendente può ricevere una cabina nuova (a sinistra di Amy) o una usata, ma cabina vuota (la vecchia stanza di James).
Questo porta a un'osservazione importante - anche se al momento non c'è nessuno nel vecchio cubicolo di James, c'è la possibilità che il nuovo dipendente possa trovare qualcosa che James ha lasciato - simile a quello che un programma di analisi forense dei dati cerca.
Ora arriviamo alla prossima parte della domanda:
How to securely erase/delete files or folders in different file systems (NTFS, ext3, ext4)?
Poiché abbiamo capito che il tipo di filesystem è irrilevante, l'unica considerazione reale qui è come . I programmi di distruzione dei dati che cercano di cancellare l'intero disco rigido funzionano sul principio che - se tutto lo spazio del disco fisso è uguale a , sarebbe molto, molto difficile identificare ciò che era presente in precedenza. I dati su HDD sono memorizzati come 1 e 0. Quindi alcuni tipi di programmi di pulizia, vanno su tutto il disco con 0, scrivendo 0 in ogni settore. Questo è comunemente chiamato zero'ing su un'unità. Ecco come potrebbe apparire prima di zero:
|10101100|00110000|11001010|10101010|
E dopo:
|00000000|00000000|00000000|00000000|
In questa fase, a meno che tu non ti sia davvero messo in un vero casino, la maggior parte delle persone potrebbe semplicemente rinunciare. Se sei inseguito da un'agenzia di tre lettere d'altra parte potrebbe far uscire i loro microscopi elettronici per capire come i bit erano allineati prima di sovrascriverli con degli zeri.
Quindi è stata introdotta una nuova metodologia di pulitura.
Comprendeva zero, ing, scrivendo dati casuali e poi azzerando di nuovo, ripetuti più volte. Ogni iterazione è stata chiamata pass . C'erano diverse tecniche che utilizzavano diversi passaggi per rendere i dati irrecuperabili, ma direi che per qualsiasi tipo di vendita a un cittadino, più di 7 passaggi sarebbero eccessivi (e probabilmente rovinerebbero comunque la vita del disco)
Come dice John nella sua risposta qui :
The only NIST approved method to securely erase a hard drive is by utilizing the secure erase internal command - documented at the Center for Magnetic Recording Research (CMRR) - and that is what everyone should be doing. It is an ATA command, and covers (S)ATA interfaces.
Dopodiché puoi sdoppiare l'unità per cancellare il firmware stesso.
SSD :
L'eliminazione dell'SSD è più complicata a causa del modo in cui i dati vengono archiviati su chip flash anziché su dischi magnetici. Questa risposta risponde ai modi migliori per cancellare in modo sicuro un SSD:
ATA Security Erase
L'unico modo per cancellare in modo sicuro un SSD è utilizzare la funzione di cancellazione della sicurezza ATA, presente su tutte le unità compatibili con ATA6 (vale a dire praticamente tutte quelle moderne). Il tentativo di sovrascrivere i dati su un SSD non rimuoverà effettivamente tutto a causa dello spazio di overprovisioning menzionato sopra. Sfortunatamente, a causa di questo spazio di overprovisioning, non puoi effettivamente leggere tutto ciò che è presente sul disco, poiché questo spazio è sempre nascosto, quindi non puoi verificare se hai sovrascritto tutto.
ATA Security Erase è progettato per risolvere questo problema eseguendo una sovrascrittura a basso livello di ogni singolo settore. Su alcuni SSD più recenti, è possibile utilizzare una funzione aggiuntiva ATA Enhanced Security Erase per distruggere una chiave master che l'unità utilizza per crittografare e decrittografare in modo trasparente i dati. La distruzione della chiave è istantanea, ma rende inaccessibile tutto il contenuto crittografato.
E i comandi su * nix:
# it must say "not locked", "not frozen", and "supported: enhanced erase"
hdparm -I /dev/sda | grep -A8 "^Security:"
# overwrite the drive with a repeating pattern to check for after
yes "You should not see me" > /dev/sda
# begin the erasure, without using a password
hdparm --security-set-pass NULL /dev/sda
hdparm --security-erase-enhanced NULL /dev/sda
# check if the repeating pattern is anywhere to be found
strings /dev/sda | grep "You should not see me"
Spero che questo aiuti!