oracular (3) Stdlib.Digest.3o.gz

Provided by: ocaml-man_5.2.0-3_all bug

NAME

       Stdlib.Digest - no description

Module

       Module   Stdlib.Digest

Documentation

       Module Digest
        : (module Stdlib__Digest)

   Basic functions
       The  functions  in  this section use the MD5 hash function to produce 128-bit digests (16 bytes).  MD5 is
       not cryptographically  secure.   Hence,  these  functions  should  not  be  used  for  security-sensitive
       applications.  The BLAKE2 functions below are cryptographically secure.

       type t = string

       The type of digests: 16-byte strings.

       val compare : t -> t -> int

       The   comparison  function  for  16-byte  digests,  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 .

       Since 4.00

       val equal : t -> t -> bool

       The equal function for 16-byte digests.

       Since 4.03

       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

       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

       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.

       Raises Invalid_argument if the argument is not exactly 16 bytes.

       val of_hex : string -> t

       Convert a hexadecimal representation back into the corresponding digest.

       Since 5.2

       Raises Invalid_argument if the argument is not exactly 32 hexadecimal characters.

       val from_hex : string -> t

       Same function as Digest.of_hex .

       Since 4.00

   Generic interface
       module type S = sig end

       The signature for a hash function that produces digests of length  hash_length  from  character  strings,
       byte arrays, and files.

       Since 5.2

   Specific hash functions
       module BLAKE128 : S

       BLAKE128  is  the  BLAKE2b  hash  function  producing 128-bit (16-byte) digests.  It is cryptographically
       secure.  However, the small size of the digests enables brute-force attacks in 2{^64} attempts.

       Since 5.2

       module BLAKE256 : S

       BLAKE256 is the BLAKE2b hash function producing  256-bit  (32-byte)  digests.   It  is  cryptographically
       secure, and the digests are large enough to thwart brute-force attacks.

       Since 5.2

       module BLAKE512 : S

       BLAKE512  is  the  BLAKE2b  hash  function  producing 512-bit (64-byte) digests.  It is cryptographically
       secure, and the digests are large enough to thwart brute-force attacks.

       Since 5.2

       module MD5 : S

       MD5 is the MD5 hash function.  It produces 128-bit (16-byte) digests and is not cryptographically  secure
       at all. It should be used only for compatibility with earlier designs that mandate the use of MD5.

       Since 5.2