module Digest:sig
..end
This module provides functions to compute 128-bit 'digests' of arbitrary-length strings or files. The digests are of cryptographic quality: it is very hard, given a digest, to forge a string having that digest. The algorithm used is MD5. This module should not be used for secure and sensitive cryptographic applications. For these kind of applications more recent and stronger cryptographic primitives should be used instead.
typet =
string
val compare : t -> t -> int
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
val string : string -> t
val bytes : bytes -> t
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
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
val output : out_channel -> t -> unit
val input : in_channel -> t
val to_hex : t -> string
Invalid_argument
if the argument is not exactly 16 bytes.val from_hex : string -> t
Invalid_argument
if the argument is not exactly 32 hexadecimal
characters.