News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

File Shredder

Started by Bieb, January 19, 2005, 10:57:41 PM

Previous topic - Next topic

Bieb

#30
The passes slider controls the number of times the data is overwritten.  One time should be fine for preventing recovery by commercially available software, but the more you do, the less chance it can be recovered using more advanced techniques.

Thanks for all the help, people.  Can't wait to see my code included with Easy Code!

Edit - Well, I just decided to go and size up the competition.  Using Google, I was able to quickly find three other file shredders.  They ranged in size from 250k - 600k, and not a single one of them was freeware.  Mine, with the icon included, (I now have the release version with an icon hosted at http://original.bieberworks.com/BieberWorksFileShredder.exe) weighs in at a whopping 21.5 K, and anyone who wants can use and/or modify it to their heart's content.  Looks like I've managed to render a service to mankind :)

Edit - Hmm, I've managed to find a few free ones, but they're all still several hundred K.  I've even found a few that are several MB!

pbrennick

Bieb,
They will never be able to compete with yours.  Welcome to the EasyCode team!  Remember, if you have suggestions to better our product, please continue to help.
Paul

Darrel

Hi there,  :8)

FYI

Was searching for something else and found this thread.  Anyhow a couple months back I noticed some one working on this concept, so I gave him the correct code for overwriting a file, then developed a working application "DigitalShredder" filesize 5.0 KB with Icon and VersionInfo. It works by placing a shortcut in the SendTo folder and then you can right-click a single file or folder and select SendTo DigitalShredder and it overwrites all files "if a folder is selected" with zeroes and deletes all files and subdirectories before deleting the selected folder.

It was completed on April 1, 2005 and has no user interface.

Regards,

Darrel

QvasiModo

Hi, I'll add my 2 cents to this topic... :)

Quote from: pbrennick on January 20, 2005, 05:02:42 AM
I also think that

FilePath Byte 200 Dup (?)

should be

FilePath Byte 200 Dup (0)  (and move it from the .Data? section to the .Data  section)

That makes sure that there is a null terminator at the end of the filename, this is probably why DeleteFile is not working.

Paul

No, that's not so. The .bss section (uninitialized data) is always initialized to zero by the PE loader. Moving that array to the .data section just makes the file 200 bytes larger, with no change to it's behavior at all.

Hope that helps! :U

AeroASM

Quote from: Robert Bieber on January 20, 2005, 11:22:47 PM
Thanks.  If I end up with a very large file length in a qword, will the dec instruction work with it?

Being trigger-happy, I would just dec the lower dword and take the 0.000000023283064365386962890625% chance that it screws up.

(please don't take me seriously on this one)

pbrennick

#35
QvasiModo,
Thanks for your clarification on this issue.  Knowledge of how the PE loader functions is not one of my strong points.  I will say this however:  I don't like the idea of leaving such things to be handled by the OS because you then have to hope that it never changes when a new flavor of windows pops up.  This also applies to closing handles, etc.  It is my belief that the proper way to code is to do your own housekeeping.  Still, your point is well taken and is nice to know.  Thank you.

Paul

Ramon Sala

Hi,

I think Paul is wright. It is better not to rely on the O.S. will fill that data with zeros. If it is true now, maybe it won't be in the future.

Ramon
Greetings from Catalonia