LVII. Mhash Functions
Introduction
These functions are intended to work with mhash. Mhash can
be used to create checksums, message digests, message authentication
codes, and more.
This is an interface to the mhash library. mhash supports
a wide variety of hash algorithms such as MD5, SHA1, GOST,
and many others. For a complete list of supported hashes,
refer to the documentation of mhash. The general rule is
that you can access the hash algorithm from PHP with MHASH_HASHNAME.
For example, to access TIGER you use the PHP constant MHASH_TIGER.
Requirements
To use it, download the mhash distribution from its web
site and follow the included installation instructions.
Installation
You need to compile PHP with the --with-mhash[=DIR] parameter
to enable this extension. DIR is the mhash install directory.
Runtime Configuration
This extension has no configuration directives defined in
php.ini.
Resource Types
This extension has no resource types defined.
Predefined Constants
The constants below are defined by this extension, and will
only be available when the extension has either been compiled
into PHP or dynamically loaded at runtime.
Here is a list of hashes which are currently supported
by mhash. If a hash is not listed here, but is listed by
mhash as supported, you can safely assume that this documentation
is outdated.
MHASH_MD5
MHASH_SHA1
MHASH_HAVAL256
MHASH_HAVAL192
MHASH_HAVAL160
MHASH_HAVAL128
MHASH_RIPEMD160
MHASH_GOST
MHASH_TIGER
MHASH_CRC32
MHASH_CRC32B
Examples
Example 1. Compute the MD5 digest and hmac and print it
out as hex
<?php
$input = "what do ya want for nothing?";
$hash = mhash(MHASH_MD5, $input);
echo "The hash is " . bin2hex($hash) . "<br
/>\n";
$hash = mhash(MHASH_MD5, $input, "Jefe");
echo "The hmac is " . bin2hex($hash) . "<br
/>\n";
?>
This will produce: The hash is d03cb659cbf9192dcd066272249f8412
The hmac is 750c783e6ab0b503eaa86e310a5db738
Table of Contents
mhash_count -- Get the highest available hash id
mhash_get_block_size -- Get the block size of the specified
hash
mhash_get_hash_name -- Get the name of the specified hash
mhash_keygen_s2k -- Generates a key
mhash -- Compute hash