module Digest: sig .. endMD5 message digest.
This module provides functions to compute 128-bit 'digests' of arbitrary-length strings or files. The algorithm used is MD5.
The MD5 hash function is not cryptographically secure. Hence, this module should not be used for security-sensitive applications. More recent, stronger cryptographic primitives should be used instead.
type t = string
The type of digests: 16-character strings.
val compare : t -> t -> int
The comparison function for 16-character digest, with the same
specification as compare and the implementation
shared with String.compare. Along with the type t, this
function compare allows the module Digest to be passed as
argument to the functors Set.Make and Map.Make.
val equal : t -> t -> bool
The equal function for 16-character digest.
val string : string -> t
Return the digest of the given string.
val bytes : bytes -> t
Return the digest of the given byte sequence.
val substring : string -> int -> int -> t
Digest.substring s ofs len returns the digest of the substring
of s starting at index ofs and containing len characters.
val subbytes : bytes -> int -> int -> t
Digest.subbytes s ofs len returns the digest of the subsequence
of s starting at index ofs and containing len bytes.
val channel : in_channel -> int -> t
If len is nonnegative, Digest.channel ic len reads len
characters from channel ic and returns their digest, or raises
End_of_file if end-of-file is reached before len characters
are read. If len is negative, Digest.channel ic len reads
all characters from ic until end-of-file is reached and return
their digest.
val file : string -> t
Return the digest of the file whose name is given.
val output : out_channel -> t -> unit
Write a digest on the given output channel.
val input : in_channel -> t
Read a digest from the given input channel.
val to_hex : t -> string
Return the printable hexadecimal representation of the given digest.
Invalid_argument if the argument is not exactly 16 bytes.val from_hex : string -> t
Convert a hexadecimal representation back into the corresponding digest.
Invalid_argument if the argument is not exactly 32 hexadecimal
characters.