Compute MD5 message digests in Elm.
This library exposes just one function (hex) which takes one String input and returns the 128-bit MD5 digest as a String of 32 hexadecimal characters.
MD5.hex "" == "d41d8cd98f00b204e9800998ecf8427e"
MD5.hex "foobarbaz" == "6df23dc03f9b54cc38a0fc1483df6e21"Unlike the Javascript program upon which this implementation is based, CRLF pairs in the input are not automatically replaced with LFs prior to computing the digest. If you want that behaviour you should adjust the input yourself before evaluating the function. For example:
myHex : String -> String
myHex input =
let
myInput =
Regex.replace Regex.All (Regex.regex "\x0D\n") (\_ -> "\n") input
in
MD5.hex myInput