MD5.lhs is an implementation of the MD5 algorithm described in RFC 1321 in Haskell. It works with both GHC and hugs (others untested). MD5Sum.dpkg.lhs is an example application that uses MD5.lhs in a clone of the md5sum utility that comes with dpkg, the Debian package manager. Also has a -t for test option. MD5Test.lhs tests the various implementations (currently only String and [Bool] are tested) with a list of cases I suspect will highlight most problems. This should help make sure now implementations conform and help check we don't break the existing ones. MD5Alg.lhs exists only to give me a little confidence that the results used in MD5Test.lhs might be correct :-) Some of the code is a bit messy ATM and for non-byte cases sometimes broken :-(