加盐哈希函数与验证函数,可用户注册与登录

加盐哈希函数

function bcryptHash($rawPassword, $round = 8)

    {
    if($round < 4 || $round > 32) $round = 8;
    $salt    =    '$2a$' . str_pad($round, 2, '0', STR_PAD_LEFT) . '$';
    $randomValue    =    openssl_random_pseudo_bytes(16);
    //echo base64_encode($randomValue);
    $salt    .=    substr(strtr(base64_encode($randomValue), '+', '.'), 0, 22);
    //echo $salt;
    return crypt($rawPassword, $salt);

    }

//用户输入输入放入密码$password

$password    =    'zhanghongmin';
$hashedPassword    =    bcryptHash($password);

//将哈希过后的密码存入数据库中


下面的是验证函数

function bcryptVerify($rawPassword, $storedHash){
    return crypt($rawPassword, $storedHash) == $storedHash;
}

//根据ID获取用户的$hashedPassword,然后将两个密码代入验证函数进行验证

if(bcryptVerify($password, $hashedPassword)){
    echo 'ok';
};

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值