Todo flash NAND necesita borrar el bloque antes de escribirlo. Pero con respecto a la seguridad, debes entender que nunca sabes qué bloque está escrito.
Las unidades SSD y también las unidades flash USB tienen controladores internos y reasignan las celdas flash actuales. Cada celda flash solo tiene una cantidad limitada de escrituras antes de que falle. Con el uso típico de una unidad flash USB o ssd (tiene algunos archivos estáticos y luego tiene una parte de la unidad en la que constantemente escribe / borra / cambia el contenido) partes específicas de la memoria flash fallarán muy pronto, destruyendo su unidad .
Debido a esto, se utiliza nivelación de desgaste .
Esto significa que si escribe en el sector X en la unidad, el controlador podría escribir esto en la celda flash 1234. A continuación, desea eliminar los datos allí y escribir bits aleatorios en el sector X. Pero el controlador decide, esa celda flash 1234 es más usado que el promedio y decide escribir los datos en la celda flash 543 en su lugar.
¡Los datos originales todavía están en la celda flash 1234! No puede leerlo usando el controlador, porque está marcado como vacío. Pero si alguien desmonta su unidad flash USB y lee el contenido de las celdas flash, los datos estarán allí.
Debido a que hay más celdas flash que el almacenamiento anunciado para permitir que algunas fallen, no hay una manera simple de evitarlo. Incluso si llena toda su unidad flash con datos aleatorios, todavía hay celdas flash en las que no se ha escrito. La forma en que los nuevos discos SSD evitan la fuga de datos es que tienen un cifrado de hardware siempre habilitado. Cada bit escrito se cifra con una clave almacenada en el controlador. Si envía un comando de "borrado seguro" a ssd, simplemente elimina la clave para el cifrado y todos los datos se convierten en basura.
¡Nunca almacene datos secretos sin cifrar en la memoria flash!