Properly wiping a SDD with BleachBit


So, if you remember, I made a topic about asking the benefits of wiping with BleachBit on a SSD. Now I am wondering if you would be willing to apply those benefits.

I was doing research on wiping SSD's and you found out that, if you have a SSD you do not need to wipe it, is actually just a myth. You still need to wipe it, however, to safely and properly wipe a SSD is not the same as wiping a HDD. SSD uses magnetic data and a normal pass wipe on a HDD would actually not effect any type of recovery operation on a SSD. I know Samsung Magician has the ability to safely and properly wipe a SSD by removing magnetic data and such.

I am wondering if BleachBit can do the same? I don't know what the "Secure Erase" feature in Samsung Magician does, but I don't think they use the Guttman 35-pass method, which was made to remove magnetic data. It would be nice if BleachBit was capable of doing such things, as SSDs are getting more and more popular now.

According to the Samsung FAQ the warning about Secure Erase is: "Also be aware that all data on the drive will be destroyed." This is different with BleachBit's method that is designed to not touch any allocated files because it wipes only free space.

While there are some differences between SSDs and HDDs, the basics are the same. Any unit of storage that is written with some data A (the data written over the secret) cannot also have other data B (the secret data). If this were true, it would have double the storage size. Because it is not true, writing A over B makes B not recoverable.

One difference with SSDs is wear leveling: they remap logical storage to physical to extend the life of the device, but if you are overwriting all the empty space, this should not matter much.

Also it is true of both SSDs and HDDs that if you want the most secure wiping, wiping the whole drive is better than wiping free space. Also, physically destroying the drive (like with a mechanical shredder) is better than wiping the whole drive. (This is explained in the documentation.)

Andrew, lead developer