Per comprendere la domanda occorre innanzitutto capire in cosa consiste
la cancellazione di un file da un filesystem.
In sostanza (vedere anche una precedente
risposta) la cancellazione consiste
nell’eliminare dalla directory nella quale il file è definito
il riferimento al nome del file e marcare tutti i blocchi ad esso allocati come
nuovamente liberi. I blocchi così liberati saranno riutilizzati
a discrezione del sistema operativo per allocarli a nuovi files.
È evidente dunque che i dati effettivamente contenuti nei blocchi
originariamente associati ai files non vengono mai “cancellati”, piuttosto
saranno sovrascritti da altri dati quando ciascun blocco verrà
allocato ad un altro file.
È bene
notare che nemmeno la formattazione del disco cancella (cioè
sovrascrive) i dati nei blocchi: si limita a ricreare le strutture
principali del filesystem.
Quindi se si vuole che il contenuto dei files sia sicuramente cancellato
occorre esplicitamente sovrascrivere altri dati a quelli contenuti
nel file e questo può essere fatto, ad esempio, con uno specifico
programma che riscriva valori qualsiasi su tutto il file subito prima di
cancellarlo.
Dato che hard disk e floppy disk utilizzano metodi di memorizzazione magnetici,
è in principio possibile cancellare un intero disco sottoponendolo
ad un campo magnetico variabile che modifichi lo stato di magnetizzazione di
tutta la superficie.
Per quanto riguarda le memorie “Flash” (vedere anche una precedente
risposta),
poiché anch’esse vengono gestite mediante un filesystem, valgono
considerazioni analoghe (escluso il metodo mediante campo magnetico
esterno, ovviamente). La cancellazione del contenuto potrebbe inoltre avvenire
anche mediante opportuni segnali elettrici, ma normalmente i costruttori non
prevedono nei dispositivi contatti elettrici per questo tipo di funzione.