hash

(PHP 5 >= 5.1.2, PHP 7, PECL hash >= 1.1)

hash锟斤拷锟缴癸拷希值 锟斤拷锟斤拷息摘要锟斤拷

说锟斤拷

hash ( string $algo , string $data [, bool $raw_output = FALSE ] ) : string

锟斤拷锟斤拷

algo

要使锟矫的癸拷希锟姐法锟斤拷锟斤拷锟界:"md5"锟斤拷"sha256"锟斤拷"haval160,4" 锟饺★拷

data

要锟斤拷锟叫癸拷希锟斤拷锟斤拷锟斤拷锟较拷锟�

raw_output

锟斤拷锟斤拷为 TRUE 锟斤拷锟皆硷拷锟斤拷锟斤拷锟斤拷锟斤拷荩锟� 锟斤拷锟斤拷为 FALSE 锟斤拷锟叫⌒� 16 锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷

锟斤拷锟斤拷值

锟斤拷锟� raw_output 锟斤拷锟斤拷为 TRUE锟斤拷 锟津返伙拷原始锟斤拷锟斤拷锟斤拷锟斤拷锟捷憋拷示锟斤拷锟斤拷息摘要锟斤拷 锟斤拷锟津返伙拷 16 锟斤拷锟斤拷小写锟街凤拷锟斤拷锟斤拷式锟斤拷示锟斤拷锟斤拷息摘要锟斤拷

锟斤拷锟斤拷锟斤拷志

锟芥本 说锟斤拷
5.4.0 tiger 锟姐法使锟矫达拷耍锟絙ig-endian锟斤拷锟街斤拷锟津。参硷拷锟斤拷锟斤拷锟绞撅拷锟斤拷锟�

锟斤拷锟斤拷

Example #1 一锟斤拷 hash() 锟斤拷锟斤拷

<?php
echo hash('ripemd160''The quick brown fox jumped over the lazy dog.');
?>

锟斤拷锟斤拷锟斤拷锟教伙拷锟斤拷锟斤拷锟�

ec457d0a974c48d5685a7efa03d137dc8bbde7e3

Example #2 使锟斤拷 PHP 5.4 锟斤拷锟竭革拷锟竭版本锟斤拷锟斤拷 tiger 锟斤拷希值

<?php
function old_tiger($data ""$width=192$rounds 3) {
    return 
substr(
        
implode(
            
array_map(
                function (
$h) {
                    return 
str_pad(bin2hex(strrev($h)), 16"0");
                },
                
str_split(hash("tiger192,$rounds"$datatrue), 8)
            )
        ),
        
048-(192-$width)/4
    
);
}
echo 
hash('tiger192,3''a-string'), PHP_EOL;
echo 
old_tiger('a-string'), PHP_EOL;
?>

锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷PHP 5.3锟叫碉拷锟斤拷锟斤拷锟�

146a7492719b3564094efe7abbd40a7416fd900179d02773
64359b7192746a14740ad4bb7afe4e097327d0790190fd16

锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷PHP 5.4锟叫碉拷锟斤拷锟斤拷锟�

64359b7192746a14740ad4bb7afe4e097327d0790190fd16
146a7492719b3564094efe7abbd40a7416fd900179d02773

锟轿硷拷

  • hash_file() - 使锟矫革拷锟斤拷锟侥硷拷锟斤拷锟斤拷锟斤拷锟斤拷锟缴癸拷希值
  • hash_hmac() - 使锟斤拷 HMAC 锟斤拷锟斤拷锟斤拷锟缴达拷锟斤拷锟斤拷钥锟侥癸拷希值
  • hash_init() - 锟斤拷始锟斤拷锟斤拷锟斤拷锟斤拷希锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷
  • md5() - 锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷 MD5 散锟斤拷值
  • sha1() - 锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷 sha1 散锟斤拷值