Suena como un proyecto divertido. Sé que dijiste "simple", pero aquí están mis pensamientos de todos modos.
Los datos con los que está escribiendo el archivo no son aleatorios, y una pasada dejará rastros de los datos originales. Depende del medio de almacenamiento. Por ejemplo, con los dispositivos magnéticos, hay microscopía de fuerza magnética . Incluso después de diez rondas de la misma cosa, no estoy seguro de que esté agregando beneficios adicionales.
Cambiar el nombre y eliminar archivos no agregará una protección sólida porque, en la mayoría de los sistemas de archivos, simplemente cambia el puntero a la ubicación en el disco donde se encuentran los datos. La eliminación de un archivo solo elimina el puntero, por lo que el disco ve los bloques como "disponibles" aunque el archivo esté realmente allí. (Esta es la razón por la cual el software de recuperación funciona.)
Las eliminaciones completas y seguras tienen las siguientes características (basadas en software, sin considerar soluciones de hardware):
-
PRNG ( generador de números pseudoaleatorios ) que genera valores aleatorios para escribir en cada byte del espacio asignado del archivo (También vea la función de cifrado a continuación).
-
Pases múltiples (cuidado aquí, depende del medio)
-
Una carrera con todos los 0s y todos los 1s tampoco podría hacer daño. Puede ayudar a interrumpir un patrón predecible, pero sutil, de aleatoriedad (porque las computadoras no son realmente aleatorias).
-
Algunos sistemas de archivos son "Copia en escritura", que es como un tipo de "control de revisión". Estos intentan evitar sobrescribir los datos ya existentes. Esa protección tendría que ser eludida.
-
Los dispositivos RAID duplican los cambios en un disco en otro disco.
-
Los archivos fragmentados pueden comenzar en un sector y terminar en otra parte del disco. Alternativamente, las funciones anti-fragmentación pueden mantener copias redundantes de los datos o reubicarlos en tiempo real.
-
Las unidades de estado sólido administran el espacio en disco de manera diferente a las unidades magnéticas. Junto con la nivelación del desgaste, hay razones técnicas que hacen que la limpieza segura sea un poco difícil. (Ver enlace de Wikipedia a continuación)
-
Encriptar un archivo antes de borrarlo ayudará a rellenarlo con bits "aleatorios" ... pero en realidad la mejor respuesta para una trituración segura es cifrarlo antes de que llegue al disco.
No te pierdas esta gran pregunta que habla sobre la eliminación de información en unidades de estado sólido, en particular unidades flash. Recuerde que los SSD se desgastan después de haber sido escritos suficientes veces.
Consulte este artículo en Wikipedia para obtener información más detallada sobre los antecedentes.
Por cierto ...
Realmente me gustaría ver una trituradora que otorgue alguna posibilidad de negación plausible. Borraría el archivo de forma segura, luego plop remanente de un archivo de señuelo en su lugar, tal vez un archivo elegido por el usuario que existe en otro lugar en el disco duro. Parecería ser los remanentes de una copia de ese archivo que una vez fue apuntada por el sistema de archivos, fue eliminada por el usuario y, dependiendo del tamaño, fue potencialmente sobrescrita por el uso regular.
Si un agente forense examinara la parte de un disco donde se ejecutó una trituradora normal, es fácil decir que se eliminó con datos aleatorios. Pero si se colocara un archivo de señuelo en su lugar, me imagino que sería más difícil saberlo.