Skip to content
/ gowipe Public

Securely delete files and directories (not for SSD)

License

Notifications You must be signed in to change notification settings

TLINDEN/gowipe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gowipe - securely delete files and directories (not for SSD)

Actions License Go Report Card GitHub release

Description

gowipe is a simple self contained tool to securely wipe files and directories. By default it renames and overwrites files and directories 30 times and uses the secure mode, which uses strong random bytes for the overwriting process. Gowipe writes as much bytes into a file as its original size.

You can tweak mode and round numbers. Other modes are zero, which uses zeroes for overwriting (not recommended) or encrypt which encrypts the data using ChaCha20Poly1305 and a strong random key. This is the most secure but also to slowest mode.

Although you can use gowipe on SSD disks, it doesn't make much sense. To wipe such a disk you have to resort to other means. But you can savely use it on magnetic discs or usb drives.

Of course there are many other such tools available, this one is insofar special as you can download a pre-compiled binary without any library dependencies. This allows you to wipe files on systems, where you cannot install a wiper via some package management (such as appliance systems or vm's).

Example

Overwrite the directory vhs recursively 50 times using strong encryption and verbose output:

gowipe  -c 50 -E -r -v vhs
Wiped vhs/help.png (355011 bytes)
Wiped vhs/rec.Dockerfile (348 bytes)
Wiped vhs/rec.gif (3533338 bytes)
Wiped vhs/rec.tape (852 bytes)
Wiped vhs (4096 bytes)

   Dirs wiped: 1
  Files wiped: 5
Bytes deleted: 3889549
 Time elapsed: 426.286639ms
  Overwritten: 50 times
    Wipe mode: encrypt
 Recurse dirs: true

Usage

Usage: gowipe [-rcvz] <file|directory>...

Options:
-r --recursive    Delete <dir> recursively
-c --count <num>  Overwrite files <num> times
-m --mode <mode>  Use <mode> for overwriting (or use -E, -S, -M, -Z)
-n --nodelete     Do not delete files after overwriting
-N --norename     Do not rename the files
-v --verbose      Verbose output
-V --version      Show program version
-h --help         Show usage

Available modes:
zero      Overwrite with zeroes (-Z)
math      Overwrite with math random bytes (-M)
secure    Overwrite with secure random bytes (default) (-S)
encrypt   Overwrite with ChaCha2Poly1305 encryption (most secure) (-E)

Getting help

Although I'm happy to hear from gowipe users in private email, that's the best way for me to forget to do something.

In order to report a bug, unexpected behavior, feature requests or to submit a patch, please open an issue on github: https://github.com/TLINDEN/gowipe/issues.

Copyright and license

This software is licensed under the GNU GENERAL PUBLIC LICENSE version 3.

Authors

T.v.Dein

Project homepage

https://github.com/TLINDEN/gowipe