帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > PHP编程
mhash 哈稀函数库
作者:佚名 发布时间:2005-04-02 来源:不详
 

本函数库支持多种哈稀演算法,例如最出名的 MD5、SHA1 或 GOST,还有其它多种的哈稀演算法,列示如下:

  • MHASH_MD5
  • MHASH_SHA1
  • MHASH_HAVAL
  • MHASH_RIPEMD160
  • MHASH_RIPEMD128
  • MHASH_SNEFRU
  • MHASH_TIGER
  • MHASH_GOST
  • MHASH_CRC32
  • MHASH_CRC32B

欲使用本函数库要先下载 mhash-x.x.x.tar.gz,网址为 http://sasweb.de/mhash 。当然还要编译 mhash 程序库,之后才能编译 PHP 程序,在编译 PHP 程序时,记得要加 --with-mhash 选项打开系统的 mhash 功能。

本函数库适合用来产生检查码 (checksums)、数位代信息或者其它功能,如下例:

<?php
$input = "Let us meet at 9 o' clock at the secret place." ;
$hash = mhash ( MHASH_SHA1 , $input );
print "哈稀值为 " . bin2hex ( $hash ). "n" ;
?>

在浏览器看到的字符串是

哈稀值为 d3b85d710d8f6e4e5efd4d5e67d041f9cecedafe


mhash_get_hash_name: 取得哈稀演算法名称。
mhash_get_block_size: 取得哈稀方式的区块大小。
mhash_count: 取得哈稀 ID 的最大值。
mhash: 计算哈稀值。

mhash_get_hash_name
取得哈稀演算法名称。
语法: string mhash_get_hash_name(int hash);
返回值: 字符串
函数种类: 编码处理
内容说明: 本函数取得哈稀演算法的名称。返回值为名称字符串,若没有指定的哈稀演算法则返回 false 或输入的名称。
使用范例
下例返回的字符串为 MD5。
<?php
$hash = MHASH_MD5;
print mhash_get_hash_name($hash);
?>

mhash_get_block_size
取得哈稀方式的区块大小。
语法: int mhash_get_block_size(int hash);
返回值: 整数
函数种类: 编码处理
内容说明: 本函数用来取得哈稀演算的区块大小。参数为编码名称,返回整数治募单位为位组 (byte)。

mhash_count
取得哈稀 ID 的最大值。
语法: int mhash_count(void);
返回值: 整数
函数种类: 编码处理
内容说明: 本函数用来取得哈稀演算的最大 ID 值。在使用哈稀计算时,会从 0 开始计数到使用的数值。本函数不用输入参数。
使用范例
<?php
$nr = mhash_count();
for($i = 0; $i <= $nr; $i++) {
echo sprintf("哈稀 %s 的区块大小为 %dn", mhash_get_hash_name($i), mhash_get_block_size($i));
}
?>

mhash
计算哈稀值。
语法: string mhash(int hash, string data);
返回值: 字符串
函数种类: 编码处理
内容说明: 本函数依指定的哈稀演算法计算哈稀值。参数 hash 为指定的哈稀演算法;参数 data 为欲计算的字符串值。

  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·Windows下集成安装Apache,PHP,MYSQ
·Mysql注入:SQL Injection with MyS
·PHP 的来龙去脉
·PHP 的功能概述
·PHP与其它CGI的比较
·PHP 的编译配置详细选项
·php.ini 配置详细选项
·如何写作PHP程序
·Hello,World
·嵌入方法
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统