hash provides a generic interface for use with hashing functions.
