PHP 短HASH的实现方法
内容摘要
这篇文章主要为大家详细介绍了PHP 短HASH的实现方法,具有一定的参考价值,可以用来参考一下。
有的时候需要用HASH来对数据标注,PHP下无疑就是Md5了,不过呢如果这个哈希是给用户
有的时候需要用HASH来对数据标注,PHP下无疑就是Md5了,不过呢如果这个哈希是给用户
文章正文
这篇文章主要为大家详细介绍了PHP 短HASH的实现方法,具有一定的参考价值,可以用来参考一下。
有的时候需要用HASH来对数据标注,PHP下无疑就是Md5了,不过呢如果这个哈希是给用户看的呢?总之试图实现4chan的tripcode(绊码)功能时候发现:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <code class = "php" > /** * 短HASH的实现 * * CHash provides users with a fairly strong but short hash for identification * Based on MD5 * @author php教程 www.idcnote.com **/ class stdHash{ var $hashIn = '' ; function __construct( $hashIn = '' ){ $this ->hashIn = $hashIn ; } function hash( $string ){ $cherryTable = Array( '0' =>0, '1' =>1, '2' =>2, '3' =>3, '4' =>4, '5' =>5, '6' =>6, '7' =>7, '8' =>8, '9' =>9, 'A' =>10, 'B' =>11, 'C' =>12, 'D' =>13, 'E' =>14, 'F' =>15); $md = md5( $string . $this ->hashIn); $m = "" ; for ( $i =0; $i <16; $i ++){ $m .= chr ( $cherryTable [ $md [ $i *2]]*16 + $cherryTable [ $md [ $i *2+1]]); } return preg_replace( '~[N=]~' , '' , str_rot13 ( base64_encode ( $m ))); } } </code> |
注:关于PHP 短HASH的实现方法的内容就先介绍到这里,更多相关文章的可以留意
代码注释