PhpDig.net

What is PhpDig?
PhpDig is a PHP MySQL based
Web Spider & Search Engine.




mhash

Name

mhash — Returns a string with the specified hash algorithm applied to the data.

Synopsis

string mhash(hash, data[, key]);
const hash: mhash constant representing a specific hash algorithm
string data: Data to which the hash algorithm is applied
string key (optional): HMAC key

Returns

String with the specified algorithm applied to the data; FALSE on error

Description

mhash() encodes information contained in data using the algorithm specified by the hash parameter. It's possible to obtain a list of supported hashes by using a combination of mhash_count() and mhash_get_hash_name() . For details, see the example in mhash_count() .

If the optional key parameter is used, the HMAC for the data is returned. HMAC is an acronym of Hashing for Message AuthentiCation. For more information on HMAC, see RFC 2104. Essentially, HMAC allows cryptographic functions to be used with a secret key, allowing for calculation and verification of a cryptographic hash.

Version

Existing since versions 3.0.9 and 4.0

Example

Example 743. Hash data with MD5

<?php
$data = "The winds are calming the channel.";

// standard MD5 encoding
$hash = mhash(MHASH_MD5, $data);
printf("Hash: %s\n", bin2hex($hash));

// MD5 with HMAC
$hmac = mhash(MHASH_MD5, $data, "MySecret");
printf("HMAC: %s\n", bin2hex($hmac));
?>



PHP Functions Essential Reference. Copyright © 2002 by New Riders Publishing (Authors: Zak Greant, Graeme Merrall, Torben Wilson, Brett Michlitsch). This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). The authors of this book have elected not to choose any options under the OPL. This online book was obtained from http://www.fooassociates.com/phpfer/ and is designed to provide information about the PHP programming language, focusing on PHP version 4.0.4 for the most part. The information is provided on an as-is basis, and no warranty or fitness is implied. All persons and entities shall have neither liability nor responsibility to any person or entity with respect to any loss or damage arising from the information contained in this book.

Powered by: vBulletin Version 3.0.7
Copyright ©2000 - 2005, Jelsoft Enterprises Ltd.
Copyright © 2001 - 2005, ThinkDing LLC. All Rights Reserved.