Digest (3)
NAME
Digest - MD5 message digest.Module
Module DigestDocumentation
Module
Digest
:
sig end
MD5 message digest.
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.
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
Pervasives.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
.
Since
4.00.0
val equal
:
t -> t -> bool
The equal function for 16-character digest.
Since
4.03.0
val string
:
string -> t
Return the digest of the given string.
val bytes
:
bytes -> t
Return the digest of the given byte sequence.
Since
4.02.0
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.
Since
4.02.0
val channel
:
Pervasives.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
:
Pervasives.out_channel -> t -> unit
Write a digest on the given output channel.
val input
:
Pervasives.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.
val from_hex
:
string -> t
Convert a hexadecimal representation back into the corresponding digest.
Raise
Invalid_argument
if the argument is not exactly 32 hexadecimal
characters.
Since
4.00.0