(PHP 5 >= 5.5.0, PHP 7)
hash_pbkdf2 — 锟斤拷锟斤拷锟斤拷锟结供锟斤拷锟斤拷锟� PBKDF2 锟斤拷钥锟斤拷锟斤拷
$algo
, string $password
, string $salt
, int $iterations
[, int $length
= 0
[, bool $raw_output
= FALSE
]] ) : string
algo
锟斤拷希锟姐法锟斤拷锟狡o拷锟斤拷锟斤拷 md5锟斤拷sha256锟斤拷haval160,4 锟饺★拷 锟斤拷支锟街碉拷锟姐法锟藉单锟斤拷渭锟� hash_algos()锟斤拷
password
要锟斤拷锟叫碉拷锟斤拷锟斤拷锟斤拷锟诫。
salt
锟斤拷锟叫碉拷锟斤拷时锟斤拷使锟矫碉拷"锟斤拷"锟斤拷锟斤拷锟街涤︼拷锟斤拷锟斤拷锟斤拷锟斤拷锟缴的★拷
iterations
锟斤拷锟叫碉拷锟斤拷时锟侥碉拷锟斤拷锟斤拷锟斤拷锟斤拷
length
锟斤拷钥锟斤拷锟斤拷锟斤拷锟捷的筹拷锟饺★拷锟斤拷锟� raw_output
为 TRUE
锟斤拷
锟剿诧拷锟斤拷为锟斤拷钥锟斤拷锟斤拷锟斤拷锟捷碉拷锟街节筹拷锟饺★拷锟斤拷锟� raw_output
为 FALSE
锟斤拷
锟剿诧拷锟斤拷为锟斤拷钥锟斤拷锟斤拷锟斤拷锟捷碉拷锟街节筹拷锟饺碉拷 2 锟斤拷锟斤拷锟斤拷为 1 锟斤拷锟街斤拷锟斤拷锟捷讹拷应锟斤拷 2 锟斤拷 16 锟斤拷锟狡碉拷锟街凤拷锟斤拷
锟斤拷锟斤拷锟斤拷锟� 0锟斤拷锟斤拷使锟斤拷锟斤拷选锟姐法锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟叫★拷锟�
raw_output
锟斤拷锟斤拷为 TRUE
锟斤拷锟皆硷拷锟斤拷锟斤拷锟斤拷锟斤拷荩锟�
锟斤拷锟斤拷为 FALSE
锟斤拷锟叫⌒� 16 锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷
锟斤拷锟� raw_output
锟斤拷锟斤拷为 TRUE
锟斤拷
锟津返伙拷原始锟斤拷锟斤拷锟斤拷锟斤拷锟捷憋拷示锟斤拷锟斤拷息摘要锟斤拷
锟斤拷锟津返伙拷 16 锟斤拷锟斤拷小写锟街凤拷锟斤拷锟斤拷式锟斤拷示锟斤拷锟斤拷息摘要锟斤拷
锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷禄锟斤拷锟斤拷 E_WARNING
锟斤拷
指锟斤拷锟斤拷未知锟斤拷锟姐法锟斤拷
iterations
小锟节碉拷锟斤拷 0锟斤拷
length
小锟节碉拷锟斤拷 0 锟斤拷锟斤拷
salt
锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷 INT_MAX
- 4锟斤拷锟斤拷
锟芥本 | 说锟斤拷 |
---|---|
7.2.0 | 锟斤拷锟斤拷支锟街非硷拷锟杰的癸拷希锟斤拷锟斤拷锟斤拷adler32锟斤拷crc32锟斤拷crc32b锟斤拷fnv132锟斤拷fnv1a32锟斤拷fnv164锟斤拷fnv1a64锟斤拷joaat锟斤拷锟斤拷 |
Example #1 hash_pbkdf2() 锟斤拷锟教o拷锟斤拷锟斤拷锟矫凤拷
<?php
$password = "password";
$iterations = 1000;
// 使锟斤拷 openssl_random_pseudo_bytes()锟斤拷random_bytes()锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟绞碉拷锟斤拷锟斤拷锟斤拷锟斤拷珊锟斤拷锟�
// 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟绞硷拷锟斤拷锟�
$salt = openssl_random_pseudo_bytes(16, MCRYPT_DEV_URANDOM);
$hash = hash_pbkdf2("sha256", $password, $salt, $iterations, 20);
echo $hash;
?>
锟斤拷锟斤拷锟斤拷锟教碉拷锟斤拷锟斤拷锟斤拷锟斤拷冢锟�
120fb6cffcf8b32c43e7
为锟剿帮拷全锟斤拷锟斤拷锟斤拷锟斤拷锟绞癸拷锟� PBKDF2 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟侥斤拷锟叫癸拷希锟斤拷锟斤拷锟斤拷俅娲拷锟�
锟斤拷锟角革拷锟矫的凤拷锟斤拷锟斤拷使锟斤拷 password_hash() 锟斤拷锟斤拷
锟斤拷锟斤拷使锟斤拷 CRYPT_BLOWFISH
锟姐法锟斤拷锟斤拷
crypt() 锟斤拷锟斤拷锟斤拷