Come citato da questa pagina :
Secure erase overwrites all user data areas with binary zeroes. Enhanced secure erase writes predetermined data patterns (set by the manufacturer) to all user data areas, including sectors that are no longer in use due to reallocation.
Questa frase ha senso solo per i dischi rotanti e senza crittografia. Su tale disco, in qualsiasi momento, c'è una vista logica del disco come un'enorme sequenza di settori numerati; la "cancellazione sicura" riguarda la sovrascrittura di tutti questi settori (e solo di questi settori) una volta , con zeri. La "cancellazione sicura avanzata" è più difficile:
-
Sovrascrive i dati più volte con distinti pattern di bit, per essere sicuri che i dati siano completamente distrutti (se ciò sia realmente necessario è soggetto a dibattito, ma qui c'è molta tradizione al lavoro).
-
Sovrascrive anche i settori che non vengono più utilizzati perché a un certo punto hanno attivato un errore I / O e sono stati rimappati (ovvero uno dei settori di riserva viene utilizzato dal firmware del disco quando il computer lo legge o lo scrive ).
Questo è l'intento . Dal punto di vista della specifica ATA, ci sono due comandi , e non esiste un modo reale per sapere come viene implementata la cancellazione, o anche se è effettivamente implementato. I dischi in natura sono noti per avere qualche libertà con le specifiche a volte (ad esempio con la memorizzazione dei dati nella cache).
Un altro metodo per la cancellazione sicura, che è molto più efficiente, è encryption :
- Quando viene acceso per la prima volta, il disco genera una chiave simmetrica casuale K e lo mantiene in alcuni spazi di memoria resistenti al riavvio (ad esempio, alcuni EEPROM).
- Ogni dato letto o scritto verrà crittografato simmetricamente, usando K come chiave.
- Per implementare una "cancellazione sicura", il disco deve solo dimenticare K generandone uno nuovo e sovrascrivendo quello precedente.
Questa strategia è applicabile sia ai dischi rotanti che agli SSD. Infatti, quando un SSD implementa la "cancellazione sicura", DEVE utilizzare il meccanismo di crittografia, perché la "sovrascrittura con zeri" ha molto meno senso, dato il comportamento delle celle Flash e il pesante rimappatura / correzione dei codici degli strati utilizzati in SSD .
Quando un disco utilizza la crittografia, non farà alcuna distinzione tra "cancellazione sicura" e "cancellazione sicura avanzata"; può implementare entrambi i comandi (a livello di protocollo ATA), ma produrranno gli stessi risultati. Nota che, analogamente, se un disco rotante pretende di implementare entrambe le modalità, può benissimo mappare entrambi i comandi alla stessa azione (si spera, quella "migliorata").
Come descritto in questa pagina , il comando hdparm -I /dev/sdX
riporterà qualcosa del genere:
Security:
Master password revision code = 65534
supported
enabled
not locked
not frozen
not expired: security count
supported: enhanced erase
Security level high
2min for SECURITY ERASE UNIT. 2min for ENHANCED SECURITY ERASE UNIT.
2 minuti non sono sufficienti per sovrascrivere l'intero disco, quindi se quel disco implementa qualche "cancellazione sicura" effettiva, deve essere con il meccanismo di crittografia. D'altra parte, se hdparm
riporta questo:
168min for SECURITY ERASE UNIT. 168min for ENHANCED SECURITY ERASE UNIT.
quindi possiamo concludere che:
- Questo disco esegue una sovrascrittura completa dei dati (questo è l'unico motivo per cui sarebbero necessarie quasi tre ore).
- La "cancellazione sicura" e la "cancellazione sicura avanzata" per quel disco sono probabilmente identiche.
A seconda delle dimensioni del disco e delle prestazioni normali per l'I / O di massa (può essere misurato con hdparm -tT /dev/sdX
, si può anche dedurre quante volte i dati vengono presumibilmente sovrascritti. Ad esempio, se il disco sopra ha dimensione 1 terabyte e offre 100 MB / s di larghezza di banda in scrittura, quindi 168 minuti sono sufficienti per una singola sovrascrittura, non i tre o più passaggi che "cancellazione sicura avanzata" dovrebbe comportare.
(Non c'è differenza tra le distribuzioni Linux in quell'area, usano tutte la stessa% di% di utilità in% di conversione).
Si deve notare che la cancellazione sicura basata sulla crittografia cancella realmente i dati solo in base alla qualità della crittografia e alla generazione delle chiavi. La crittografia del disco non è un compito facile, dal momento che deve essere sicuro e supportare l'accesso casuale. Se il firmware implementa semplicemente ECB , allora verranno identificati blocchi identici di testo in chiaro, come di solito viene illustrato da l'immagine del pinguino. Inoltre, la generazione di chiavi potrebbe essere compromessa; è possibile che il PRNG sottostante sia piuttosto debole e che la chiave sia suscettibile di ricerca esauriente.
Questi "dettagli" sono molto importanti per la sicurezza e non puoi testarli . Pertanto, se vuoi essere sicuro della cancellazione dei dati, ci sono solo due modi:
-
Il produttore del disco ti fornisce abbastanza dettagli su ciò che il disco implementa e garantisce la cancellazione (preferibilmente contrattualmente).
-
Ricorri alla buona vecchia distruzione fisica. Tira fuori i trituratori pesanti, il forno caldo e il calderone di acido!