May 26, 2018

Recursive message digest wrapper utility

This utility is a wrapper for the md53, sha13, rmd1603, and tiger hash routines. It is remarkably similar to the digest package, except that it can recursively checksum directory trees.

While a simple checksum on a tar file is usually satisfactory, once said archive has been extracted, it is virtually impossible to repackage the extracted tree in a form that can yield a repeatable checksum. To be specific, changes in timestamps and ownership, and changes in file ordering within directories can affect the checksum of the archive, while not really impacting the actual code at all.

The algorithm used to checksum a directory in this implementation is considers only the files’ pathnames, the files’ types ie, directory vs. file vs. symbolic link, and their contents for the latter two. It is described in greater detail in the man page.