Shash is a program which is used to produce messages for records, and checks whether the process remains the same (i.e., whether the records are changed) because anyone can create the message digest, it may not be proper for some protected applications. Because of this, shash also supports the HMAC (rfc2104), which is a system for message verification using cryptographic jumble functions. Shash can use a key with a jumble algorithm to produce hashes that can only be confirmed with the same key. This way, you can securely check whether records in a filesystem were changed.