Guide for the cancellation of solid state media (Sata / SAS / NVME)

September 6, 2024 · View on GitHub

Index

  1. Disclaimer & Warning
  2. Current Standard Commands for Sanitization
  3. Manufacturer and Vendor Support for Sanitization
  4. Advised Procedure for Sanitization of SSD-Drives

Disclaimer & Warning

The following information is given without any warranty and indicates best practices as of the writing of this content. All information should be validated for the precise manufacturer / vendor SKU you want to sanitize. Any sanitization process should be validated by comparing the information contained on the disk before and after sanitization assuring that the previously stored data has been destroyed. Given that most of the manufacturer tools (excluding nvme-cli as it was open sourced from the beginning) available today are closed source, it is not possible to determine with security if the respective tool does or does not effectively verify the outcome of a sanitization. To assure a successful sanitization it is highly recommended to compare the data contained on the disk before and after sanitization and use the manufacturer tool together with tools such as nwipe.

Current Standard Commands for Sanitization & Support by Manufacturers and Vendors

Current Standards

All major block device interface standards contain optional block commands for sanitization. Below are the standards listed for reference:

Manufacturer and Vendor Support for Sanitization

Given that the support for sanitization is optional and not a mandatory aspect of the respective standards the support accross vendors can vary largely. The following table does not claim or warrant to be complete, it is highly advised to always validate the information with the manufacturer:

ManufacturerManufacturer Tool (MFT)SATASASNVME
SamsungSamsung DC Toolkit 3.0Use MFT*Use MFTUse MFT
Intel / SolidigmSolidigm™ Storage ToolUse MFT**Use MFTUse MFT
Western Digitalsupports SAS / SCSI format unit commandhdparm sanitizesg_utils sanitizenvme-cli sanitize
Sandisksupports SAS / SATA / SCSI format unit commandhdparm sanitizesg_utils sanitizenvme-cli sanitize
SeagateOpen SeachestUse MFTUse MFTUse MFT
SK HynixUnconfirmed for LinuxN/AN/AN/A
KioxiaUnconfirmed for LinuxN/AN/AN/A
MicronUnconfirmed for LinuxN/AN/AN/A
KingstonUnconfirmed for LinuxN/AN/AN/A
OthersUnconfirmed for LinuxN/AN/AN/A

* DC Toolkit 3.0 contains hdparm, but Interface Standard Compliance is unconfirmed

** Generally Supported, but individual models might offer different levels of support

Advised Procedure for Sanitization of SSD Drives

  1. Complete an intial sanitization using the manufacturer tools or if supported by the manufacturer use hdparm, sg_utils or nvme;
  2. Follow up with SHREDOS/Nwipe with a single PRNG stream with verification (PRNG data is extremely hard if not impossible to compress and therefor has to be written out by the firmware);
  3. Complete an additional sanitization using the manufacturer tools or if supported by the manufacturer use hdparm, sg_utils or nvme;
  4. Validate that the data has been overwritten.