/php-jh-hash

JH hash function for php - PHP extension

Primary LanguageC

JH hash function for PHP 
Version 0.1

JH is a hash function which was submitted to the NIST hash competition
(2008--2012) in October 2008 and selected as one of the five finalists. There
are four JH hash algorithms, namely, JH-224, JH-256, JH-384 and JH-512,
constructed from the same compression function. 

The author of this extension was in no way involved in the development of the
JH hash function. The hash source code was taken directly from NIST
submission package with a few minor variable name changes so that it would play
nice with PHP.

See the CREDITS section for more details.

= INSTALLATION =

You'll need to have the PHP 5 development package and a working build
environment to compile this module.

To compile and install:

   phpize
   ./configure --enable-jh
   make
   sudo make install

Then add the following to your php.ini file:

   extension=jh.so

= USAGE =

Function Description:
   
   string jh_hash(string $string [, int bit_length = 512])

Example:

   // Build a base-64 encoded hash
   $hash = base64_encode(jh_hash('Hello, world.'));

= CREDITS =

JH hash function by Hongjun Wu

PHP extension written by Bryan C. Geraghty <bryan@ravensight.org>

For more details, see: 

   http://www3.ntu.edu.sg/home/wuhj/research/jh/
   http://csrc.nist.gov/groups/ST/hash/sha-3/Round3/submissions_rnd3.html

= LICENSE =

The SHA-3 Submission Requirements states:

   "Each submitted algorithm must be available worldwide on a royalty free
   basis during the period of the hash function competition."

If the algorithm is selected as the winner of the competition, the following
applies: 

   "an irrevocable nonexclusive royalty-free license to practice the referenced
   algorithm, reference implementation or the optimized implementations"

If the algorithm is not selected as the winner, the license will be determined
by the team.