Es hängt von Ihrem Paranoia-Level ab. Aufgrund der Art und Weise, wie SSDs mit dem Schreiben von Daten umgehen, ist es nicht so gut, eine einmalige Null auf einer SSD durchzuführen wie auf einer Festplatte.
Wenn Sie eine bestimmte Datenseite auf eine Festplatte schreiben, werden die neuen Daten einfach über die alten Daten geschrieben und ersetzen diese. Schreiben Sie Nullen auf die gesamte Festplatte und alle alten Daten werden gelöscht. SSDs hingegen können einzelne Seiten nicht einfach überschreiben. Um die Daten auf einer Seite zu ersetzen, müssen zuerst die alten Daten gelöscht werden, und SSDs können keine einzelnen Seiten löschen. Sie müssen ganze Blöcke löschen, die aus vielen Seiten bestehen.
Wenn Sie also eine SSD zum Überschreiben auffordern, z. B. Seite Nr. 5, werden die Daten auf Seite Nr. 5 von der SSD nicht geändert, sondern als ungültig markiert, und eine andere derzeit leere Seite wird zugewiesen (z. B. Nr. 2305) Die neuen Daten werden auf Seite 2305 gespeichert, und das nächste Mal, wenn das Betriebssystem nach Seite 5 fragt, wird stattdessen die Nummer 2305 angezeigt. Die ursprünglichen Daten für Seite 5 bleiben dort bis zu einem späteren Zeitpunkt gespeichert, wenn das Laufwerk mehr Speicherplatz benötigt, alle verbleibenden gültigen Seiten aus dem Block entfernt und gelöscht werden. SSDs haben mehr physische Speicherkapazität, als sie dem Computer zur Verfügung stellen. Daher können sie einige Zeit mit solchen Blöcken jonglieren, bevor sie tatsächlich etwas löschen müssen (und wenn sie tatsächlich etwas löschen, gibt es keine gute Möglichkeit, vorherzusagen, welche Datenblöcke übrig bleiben zum Löschen ausgewählt werden). Siehe diesen AnandTech-Test für viel mehr Details (Warnung: es ist ziemlich lang und das relevante Zeug ist verteilt).
Nettoergebnis: Wenn Sie Nullen über das gesamte Laufwerk schreiben, haben Sie nicht alle alten Daten überschrieben. Sie haben die Übersetzungstabelle des Controllers aktualisiert, sodass keine der alten Daten an das Betriebssystem zurückgegeben werden (diese Seiten sind alle ungültig). Aber wenn jemand hardcore genug ist, um den Controller zu umgehen, könnte er einige Ihrer Daten zurückbekommen.
Zweimaliges Überschreiben wird wahrscheinlich funktionieren, hängt jedoch von der Zuweisungsstrategie des Controllers ab. Das zweimalige Überschreiben mit zufälligen Daten ( diskutil randomDisk 2 /dev/diskN
) funktioniert zwar mit größerer Wahrscheinlichkeit, ist aber immer noch nicht garantiert. Beide haben auch einige nachteilige Nebenwirkungen: Sie beanspruchen einen Teil der Lebensdauer des Laufwerks und erhöhen außerdem die logische Fragmentierung der SSD, wodurch die Schreibleistung verringert wird.
Beachten Sie, dass neuere Versionen des grafischen Festplattendienstprogramms von OS X die Optionen zum sicheren Löschen auf SSDs deaktivieren (aus den oben erläuterten Gründen), die Befehlszeilenversion sie jedoch weiterhin zulässt. Übrigens habe ich auch einige Empfehlungen zum sicheren Löschen von SSDs durch Konvertieren in ein verschlüsseltes Format gesehen, aber dies ist (wenn überhaupt) etwas weniger sicher als das Überschreiben mit zufälligen Daten.
Der beste Weg, eine SSD sicher zu löschen, besteht darin, die integrierte Funktion zum sicheren Löschen des Controllers aufzurufen. Dies sollte (wenn die Controller-Designer ihre Arbeit erledigt haben) wirklich alle Blöcke löschen und auch den Nebeneffekt haben, dass die logische Seitenzuordnung zurückgesetzt, im Wesentlichen defragmentiert und ihre ursprüngliche Leistung wiederhergestellt wird. Leider laufen die meisten Dienstprogramme, die ich dafür gesehen habe (z. B. HDDErase von CMRR ), unter DOS, was auf einem Mac nicht funktioniert . Ich habe ein Posting zu Makros mit (ziemlich komplexen) Anweisungen zum sicheren Löschen von einer GParted-Boot-CD gefunden. Es ist möglicherweise auch möglich, Parted Magic von einem bootfähigen Flash-Laufwerk aus zu verwenden , aber ich habe dies nicht ausprobiert.
Forscher des UCSD-Labors für nichtflüchtige Systeme haben verschiedene Möglichkeiten zur Desinfektion von SSDs getestet, indem sie das Laufwerk "löschten", es dann zerlegten, um den Controller zu umgehen, und nach verbleibenden Daten suchten ( Zusammenfassung , vollständige Papierform ). Ihre Ergebnisse stimmen größtenteils mit den oben genannten überein (und zeigen auch, dass der integrierte Befehl zum sicheren Löschen nicht immer ordnungsgemäß implementiert ist):
Unsere Ergebnisse führen zu drei Schlussfolgerungen: Erstens sind integrierte Befehle effektiv, aber die Hersteller implementieren sie manchmal falsch. Zweitens ist das zweimalige Überschreiben des gesamten sichtbaren Adressraums einer SSD in der Regel, jedoch nicht immer, ausreichend, um das Laufwerk zu bereinigen. Drittens ist keine der vorhandenen festplattenorientierten Techniken zur Bereinigung einzelner Dateien auf SSDs wirksam.