La pulizia è molto lenta. Troppa poca entropia?


16

Devo consegnare un laptop incluso il suo disco rigido. Dato che non era crittografato, volevo cancellarlo almeno in fretta. So che questo non è ottimale su SSD, ma ho pensato meglio della semplice lettura.

Ora sto eseguendo la pulizia di una chiavetta USB live ed è dolorosamente lento. Mi chiedo perché sia ​​così. Ovviamente non succede quasi nulla sul computer oltre a pulire quel dispositivo, quindi immagino che l'entropia potrebbe essere bassa (entropy_avail dice che è al 1220). Sarebbe ugualmente bello chiamare

dd if=/dev/random of=/dev/sda1 bs=1k

quattro volte? O c'è un modo in cui posso chiamare qualcosa che aumenterà la casualità? O il collo della bottiglia da qualche parte è completamente diverso?


23
No. Smetti di farlo. Stai solo distruggendo l'SSD.
Michael Hampton

È questo l'uso sbagliato della parola entropia?
user3728501

3
@ user3728501: Ci sono davvero due aspetti della risposta: "entropia" qui è coerente con l'uso del kernel, quindi sì, è la parola giusta in tal senso; ma l'uso dell'entropia da parte del kernel sta davvero parlando dell'entropia stimata , non della vera entropia di Shannon. Basti dire che i dettagli sono sufficientemente sottili da non farti criticare da nessuno per aver detto "entropia" in questo contesto (a meno che non siano pedanti).
Reid,

3
Non capisco perché qualcuno dovrebbe usare random / urandom su un disco moderno comunque, SSD o no - l'azzeramento sarebbe più rapido ed altrettanto efficace.
Chopper3,

@Reid Abbastanza giusto - ho visto la domanda ed ero interessato a causa del mio background fisico.
user3728501

Risposte:


50

Non tentare di "cancellare" un SSD con strumenti progettati per far girare i dischi rigidi magnetici. In realtà non distruggerai tutti i dati e ridurrai solo la durata dell'SSD.

Utilizzare invece uno strumento di cancellazione appositamente progettato per gli SSD, che può utilizzare la cancellazione del flash interna dell'unità (scarta) per scartare tutti i blocchi, inclusi quelli a cui non è possibile accedere. Il fornitore SSD di solito fornisce uno strumento del genere che è garantito per essere compatibile con le unità di quel fornitore.

Puoi anche provare a farlo da solo con un'utilità di cancellazione sicura . I programmi che eseguono Secure Erase funzionano sia con dischi rigidi che con SSD. Inoltre, alcuni BIOS di sistema (principalmente nei laptop aziendali) hanno la funzionalità Secure Erase integrata. Si noti che una cancellazione sicura richiederà ore su un disco rigido, ma solo pochi secondi su un SSD; su un disco rigido ogni settore deve essere riscritto, ma su un SSD eliminerà tutti i blocchi contemporaneamente e / o cambierà la chiave di crittografia interna del disco.

(E nota che la cancellazione sicura non ha funzionato correttamente su alcuni dei SSD di prima generazione; in questi casi dovresti semplicemente gettare il disco in un frantoio.)


1
Bravo @Michael per non lasciare che la domanda ostacoli la risposta corretta.
pulcini,

6

L'uso /dev/urandomdovrebbe rendere tutto più veloce. Non cancellerei un SSD del genere. Gli SSD di solito hanno un avanzato livello di usura in atto. Fondamentalmente, invece di scrivere sui dati esistenti, l'unità scrive su porzioni inutilizzate. Ci vorrà un po 'di tempo per confondere correttamente tutti i dati. A quel punto, avresti già consumato un SSD, anche se è solo un po '.


2
Più veloce di /dev/random, certo, ma più lento di /dev/zero, e non ti garantisce alcuna sicurezza.
Segna il

2
@Mark Why? Sebbene sia solo pseudocasuale, sovrascrive anche i dati sul dispositivo con una schifezza ad alta entropia.
Peter - Ripristina Monica il

4
@peterh, non hai bisogno di merda ad alta entropia. Non è stato possibile recuperare i dati da un'unità a zero zero almeno negli ultimi 20 anni.
Segna il

3

/dev/randomgenera dati casuali per entropia raccolti dal sistema (ritardi tra le scorciatoie da tastiera, tempistica della rete misurando gli arrivi dei pacchetti con precisione in nanosecondi, ecc.). Se l'entropia non è sufficiente, questo dispositivo blocca l'output mentre raccoglie più entropia.

/dev/urandomusa anche l'entropia raccolta, ma usa anche un generatore pseudocasuale. Quindi non ha molta entropia, a differenza /dev/random, ma è molto veloce. Il suo output ha un'entropia abbastanza elevata, quindi puoi usarlo ovunque se non hai restrizioni di sicurezza molto elevate (in genere, generazione di chiavi).

Se si sovrascrive un SSD a livello di blocco con schifezze ad alta entropia, si sovrascriverà effettivamente il suo flash ram a un livello molto basso (e nella maggior parte dei casi irraggiungibile). Questo perché l'IC di controllo SSD non ha alcuna possibilità di indagare, i tuoi dati sono davvero schifosi o no, quindi il suo meccanismo di deduplicazione dei dati è facilmente evitato.

Ma i flash ram hanno una scrittura a blocchi massima e lo invii con un'azione simile più vicino alla sua scadenza. Ma un SSD può essere sovrascritto circa 10000-100000 volte prima che inizi a morire, e non è necessario che la cancellazione dei dati avvenga così spesso, quindi va ancora bene.


Dovrei usare il mio account serverfault più spesso.
PNDA

1

In risposta ai commenti alla mia risposta, devo ammettere che la pulizia in generale non è una buona idea per gli SSD.

Oltre alle risposte sopra vorrei raccomandare a caso

È anche più veloce dell'urandom. urandom è molto più veloce di random ma tuttavia abbastanza lento. Frandom è la mia scelta per cancellare i dischi e solo per pulire i dischi. Non produce la stessa entropia di random e urandom, ma per pulire il disco dovrebbe essere sufficiente. Come sottolineato da MadHatter, l'algoritmo utilizzato presenta punti deboli. Ma per cancellare il disco, tuttavia, si desidera solo assicurare che non è possibile ricostruire i possibili bit rimanenti.

Se hai problemi a gestirlo, ArchWiki ha una buona documentazione. L'ArchWiki copre anche molto di più dettagli su come elim dischi.


Come avvertimento, noto che l'autore di frandom afferma che " si basa sull'algoritmo di crittografia RC4, che è considerato sicuro ed è utilizzato da diverse applicazioni, incluso SSL ". Non è del tutto vero; Wikipedia osserva a luglio 2015 che " RC4 presenta punti deboli che ne contrappongono l'uso in nuovi sistemi ... RFC 7465 vieta l'uso di RC4 in TLS ". Concedo che il frandom sia un rimpiazzo /dev/urandom, che comunque non è altamente casuale, ma chiunque utilizzi il frandom dovrebbe probabilmente rendersi conto dei problemi.
MadHatter,

grazie per il commento. Ho modificato la mia risposta per riflettere il tuo punto.
Henrik Pingel,

Non posso discutere con quello - +1 da parte mia (anche se questa domanda ha già ricevuto una risposta completa).
MadHatter,

Grazie. pulire con urandompuò richiedere ore. Sono abbastanza sicuro che molte persone apprezzeranno casualmente per questo motivo.
Henrik Pingel,

1
Sono d'accordo, ma non per gli SSD , che è proprio questa domanda.
MadHatter,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.