md5deep is a suite of cross platform tools to compute and audit hashes for any number of input files. Although similar to other hashing programs like md5sum, it can also recursively traverse directory structures, use a variety of algorithms, and use files of known hashes to perform both positive and negative matching. Another program in the suite hashdeep can conduct a computer forensics audit. The programs runs on Microsoft Windows, Mac OS X, Linux, FreeBSD, Solaris, and most other *nix operating systems. It has been included in the Fink and FreeBSD Ports projects.
The md5deep suite can handle a wide variety of input and output file formats. It can use md5sum, BSD md5, Hashkeeper, iLook, and NSRL files as sources for known hashes. The suite does not support Encase hash files.
The output for md5deep can be controlled using command line switches, but in general is the hash, two spaces, and the filename.
The -k switch can be used to add an asterisk like md5sum,
The line terminator can be changed to a \0, or NULL character, using the -0 command line switch.
The md5deep suite can be cross-compiled for Windows (both 32-bit and 64-bit) using the Fedora Core Linux Distribution. The CONFIGURE_FC.sh script distributed with the distribution will configure a newly installed FC release for the mingw32 and mingw64 cross-compilers, download all necessary libraries, download the md5deep source-code distribution from the SVN repository, and compile everything. Thus, a complete cross-compile can be performed on a new install with these commands:
wget https://md5deep.svn.sourceforge.net/svnroot/md5deep/branches/version4/CONFIGURE_FC.sh sudo sh CONFIGURE_FC.sh