> 1) ^ 0xA001); } else { $crc = $crc >> 1; } } } return $crc; } if (isset($_GET['key']) === TRUE) { $key = $_GET['key']; $sha = strtolower(sha1($key)); $md5 = strtolower(md5($key)); $crc32 = strtolower(dechex(crc32($key))); $crc16 = strtolower(dechex(crc16($key))); echo "Key: $key\n
\n"; echo "SHA-1: $sha\n
\n"; echo "MD-5 : $md5\n
\n"; echo "CRC32: $crc32\n
\n"; echo "CRC16: $crc16\n

\n"; if (extension_loaded('cryptopp') === TRUE) { echo "Crypto++ PHP extension:
"; $algorithms = array( array(CRYPTOPP_HASH_HAVAL, 'HAVAL'), array(CRYPTOPP_HASH_HAVAL3, 'HAVAL-3'), array(CRYPTOPP_HASH_HAVAL4, 'HAVAL-4'), array(CRYPTOPP_HASH_HAVAL5, 'HAVAL-5'), array(CRYPTOPP_HASH_MD2, 'MD-2'), array(CRYPTOPP_HASH_MD4, 'MD-4'), array(CRYPTOPP_HASH_MD5, 'MD-5'), array(CRYPTOPP_HASH_PANAMA_LITTLE_ENDIAN, 'Panama (LE)'), array(CRYPTOPP_HASH_PANAMA_BIG_ENDIAN, 'Panama (BE)'), array(CRYPTOPP_HASH_RIPEMD128, 'RIPEMD-128'), array(CRYPTOPP_HASH_RIPEMD160, 'RIPEMD-160'), array(CRYPTOPP_HASH_RIPEMD256, 'RIPEMD-256'), array(CRYPTOPP_HASH_RIPEMD320, 'RIPEMD-320'), array(CRYPTOPP_HASH_SHA1, 'SHA-1'), array(CRYPTOPP_HASH_SHA256, 'SHA-256'), array(CRYPTOPP_HASH_SHA384, 'SHA-384'), array(CRYPTOPP_HASH_SHA512, 'SHA-512'), array(CRYPTOPP_HASH_TIGER, 'Tiger'), array(CRYPTOPP_HASH_WHIRLPOOL, 'Whirlpool'), array(CRYPTOPP_HASH_ADLER32, 'Adler32'), array(CRYPTOPP_HASH_CRC32, 'CRC32') ); $i = 0; while ($i < sizeOf($algorithms)) { $currentAlgorithm = $algorithms[$i]['0']; if (cryptopp_hash_enabled($currentAlgorithm) === FALSE) { $i++; } else { $hash = cryptopp_create_hash($currentAlgorithm); $algorithmName = $algorithms[$i]['1']; cryptopp_set_hash_plaintext($hash, $key); cryptopp_hash($hash); $hashValue = strtolower(cryptopp_get_hashtext($hash)); echo "$algorithmName: $hashValue\n
\n"; cryptopp_destroy_hash($hash); } $i++; } echo "
\n"; } if (extension_loaded('mhash') === TRUE) { echo "Mhash PHP extension:
"; $algorithms = array( array(MHASH_MD5, 'MD-5'), array(MHASH_SHA1, 'SHA-1'), array(MHASH_HAVAL128, 'HAVAL-128'), array(MHASH_HAVAL160, 'HAVAL-160'), array(MHASH_HAVAL192, 'HAVAL-192'), array(MHASH_HAVAL256, 'HAVAL-256'), array(MHASH_RIPEMD160, 'RIPEMD-160'), array(MHASH_GOST, 'GOST'), array(MHASH_TIGER, 'Tiger'), array(MHASH_TIGER128, 'Tiger-128'), array(MHASH_TIGER160, 'Tiger-160'), array(MHASH_CRC32, 'CRC32'), array(MHASH_CRC32B, 'CRC32b') ); $i = 0; while ($i < sizeOf($algorithms)) { $currentAlgorithm = $algorithms[$i]['0']; $hashed = strtolower(bin2hex(mhash($currentAlgorithm, $key))); $hashName = $algorithms[$i]['1']; echo "$hashName: $hashed\n
\n"; $i++; } echo "
\n"; } } echo "
\n"; echo "\n
\n"; echo "\n"; ?>