3 pass byte shuffler/unshuffler
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
Avril b61eee1711
ready for production
4 years ago
build Initial commit 5 years ago
include now works 5 years ago
lean ready for production 4 years ago
src fixed bad fread 4 years ago
.gitignore profiling and ~64x perf improvements 4 years ago
LICENSE Create LICENSE 4 years ago
Makefile profiling and ~64x perf improvements 4 years ago
README.md update readme 4 years ago
TODO starting rewrite 4 years ago

README.md

shuffle3 - 3 stage byte shuffler

Deterministically and reversably shuffle a file's bytes around.

Shuffling

Shuffle a file in place

$ shuffle3 -s file

Unshuffling

Unshuffle a file in place

$ shuffle3 -u file

Other options

Run with --help for more options.

Building

Run make to build the normal binary. It will output to shuffle3-release.

Release target

The release (default) target uses the variables RELEASE_CFLAGS and RELEASE_LDFLAGS to specify opitimisations. These can be set by you if you wish.

Note

The default RELEASE_CFLAGS contains the flag -march=native. This may be underisable for you, in which case set the variable or modify the makefile to remove it.

Debug target

To build with debug information, run make debug. Extra debug flags can be provided with the DEBUG_CFLAGS and DEBUG_LDFLAGS variables which have default values in the Makefile.

The build and unstripped binary will be shuffle3-debug.

Notes

Before switching between release and debug targets, remember to run make clean.

License

GPL'd with <3