Zum Inhalt springen

Datenlöschung einer NVMe SSD mithilfe der sicheren- oder kryptografischen Löschung der nvme-cli Anwendung

13. Juni 2023 durch
Christian Lisec
ACHTUNG! Das Ausführen jeglicher Befehlszeilen in diesem Beitrag erfolgt auf eigene Gefahr und ist keine Garantie dafür, dass ihre Daten unbeschädigt bleiben!

Um Daten sicher von einer NVMe-SSD zu löschen, sollten Sie einen Vorgang namens "Secure Erase" ausführen, der entweder über Ihr BIOS oder eine Form von SSD-Anwendung (nvme-cli) durchgeführt wird.

Im Rahmen der nvme-cli Anwendung kann der Host eine Formatierung des Inhalts des NVM (Non-Volatile Memory) anfordern. Es gibt zwei Arten der Formatierung. Die sichere Löschung löscht alle Benutzerinhalte, die im NVM-Subsystem vorhanden sind. Die kryptografische Löschung löscht alle Benutzerinhalte, die im NVM-Subsystem vorhanden sind, indem der Verschlüsselungsschlüssel gelöscht wird, mit dem die Daten zuvor verschlüsselt wurden.

Wenn Sie eine kryptografische Löschung auf einer NVMe-SSD durchführen, werden tatsächlich keine Daten gelöscht. Stattdessen generiert der Controller einen neuen Verschlüsselungsschlüssel und schreibt ihn in die sichere Enklave, wobei der alte Schlüssel überschrieben wird und alle binären Daten auf den Flashzellen nicht wiederherstellbar gemacht werden. Dies ist sowohl aus Sicherheits- als auch aus langlebiger Sicht nützlich. Es verringert die Schreibaktivität, was wiederum dazu beiträgt, den Verschleiß der Flashzellen zu verringern. Zudem dauert die Ausführung des Secure-Erase Vorgangs, anders als bei mechanischen HDD-Festplatten, nur ein paar Sekunden!

Sofern die TRIM-Funktion der NVMe-SSD im jeweiligen Betriebssystem aktiv war, wurden vom Benutzer gelöschte Daten automatisch mit Nullen/Zeros überschrieben. Das sorgt dafür, dass die NVMe-SSD Ihre Schreib- und Leseperformance beibehält und zugleich die Wiederherstellung von Daten schwieriger gestaltet. Die TRIM-Funktion allein kann nicht dafür garantieren, dass alle geschriebenen Benutzerdaten permanent gelöscht sind. Daher sicherheitshalber die sichere Löschung ausführen und wenn man absolut sicher fahren will, zusätzlich einen Hammer nehmen :))

ACHTUNG! Das Ausführen jeglicher Befehlszeilen in diesem Beitrag erfolgt auf eigene Gefahr und ist keine Garantie dafür, dass ihre Daten unbeschädigt bleiben!

Schritt 1: Installation von nvme-cli

Öffnen Sie ein Terminal oder eine Eingabeaufforderung auf Ihrem System.

Überprüfen Sie, ob "nvme-cli" bereits installiert ist, indem Sie den folgenden Befehl ausführen:

nvme version

Wenn es nicht installiert ist, fahren Sie mit der Installation fort.

Installieren Sie "nvme-cli" mithilfe des entsprechenden Paketmanagers für Ihr Betriebssystem:

  • Ubuntu/Debian
    sudo apt-get update
    sudo apt-get install nvme-cli
  • Fedora/CentOS:
    sudo dnf install nvme-cli
  • Arch Linux:
    sudo pacman -Sy nvme-cli


Schritt 2: NVMe-SSD identifizieren und überprüfen, ob Secure Erase unterstützt wird.

Verbinden Sie die NVMe-SSD mit Ihrem System, sofern dies noch nicht geschehen ist.

Öffnen Sie ein Terminal oder eine Eingabeaufforderung.

Führen Sie den folgenden Befehl aus, um die verfügbaren NVMe-Geräte aufzulisten:

sudo nvme list

Dieser Befehl zeigt Informationen über die angeschlossenen NVMe-Geräte an, einschließlich ihrer Gerätepfade (z. B. /dev/nvme0).

sudo nvme id-ctrl -H /dev/nvmeX

Dieser Befehl zeigt Informationen über die verfügbaren Formatierungsmöglichkeiten (Secure Erase und oder Cryptographic Erase). 


Entweder Schritt 3.1: Sichere Löschung durchführen

Ermitteln Sie den Gerätepfad der Ziel-NVMe-SSD aus dem vorherigen Schritt.

Führen Sie den folgenden Befehl aus, um eine sichere Löschung auf der NVMe-SSD durchzuführen:

sudo nvme format --ses=1 /dev/nvmeX

Ersetzen Sie /dev/nvmeX durch den tatsächlichen Gerätepfad Ihrer NVMe-SSD.

Warten Sie, bis der Vorgang der sicheren Löschung abgeschlossen ist. Dies kann je nach Größe der SSD einige Zeit dauern.


Oder Schritt 3.2: Kryptografische Löschung durchführen

Ermitteln Sie den Gerätepfad der Ziel-NVMe-SSD aus Schritt 2.

Führen Sie den folgenden Befehl aus, um eine kryptografische Löschung auf der NVMe-SSD durchzuführen:

sudo nvme format --ses=2 /dev/nvmeX

Ersetzen Sie /dev/nvmeX durch den tatsächlichen Gerätepfad Ihrer NVMe-SSD.

Warten Sie, bis der Vorgang der sicheren Löschung abgeschlossen ist. Die Ausführung sollte nur ein paar Sekunden andauern.


Schritt 4: Die gelöschten Daten trimmen

Ermitteln Sie den Gerätepfad der Ziel-NVMe-SSD aus Schritt 2.

Führen Sie den folgenden Befehl aus, um sicherzustellen, dass alle Daten durch eine Trimmung der Datenblöcke auf der NVMe-SSD nicht mehr wiederherstellbar sind:

sudo blkdiscard /dev/nvmeX

Ersetzen Sie /dev/nvmeX durch den tatsächlichen Gerätepfad Ihrer NVMe-SSD.


Schritt 5: Die Datenlöschung überprüfen

Ermitteln Sie den Gerätepfad der Ziel-NVMe-SSD aus Schritt 2.

Führen Sie den folgenden Befehl aus, um sicherzustellen, dass alle Daten auf der NVMe-SSD entfernt sind:

sudo hexdump /dev/nvmeX 


Notiz

  • Wenn Fehler während der Formatierung aufgetreten sind, den Computer in den Ruhezustand versetzen, wieder aktivieren und anschließend den Befehl erneut ausführen:
    sudo systemctl -i suspend
    sudo nvme format /dev/nvmeX --ses=1
Christian Lisec 13. Juni 2023
Diesen Beitrag teilen
Ihr dynamisches Snippet wird hier angezeigt ... Diese Meldung wird angezeigt, weil Sie weder einen Filter noch eine Vorlage zur Verwendung bereitgestellt haben