Meteor 用户登录注册密码验证 php版本

本文详细解析了Meteor框架使用SHA256和bcrypt对用户密码进行加密的过程,并提供了一个将这些加密算法整合到PHP代码中的示例。通过对比Meteor的密码处理流程和PHP的实现方式,读者可以深入了解密码安全的最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


meteor 对用户密码加密的模块在 accounts-password 下:

https://github.com/meteor/meteor/blob/5931bcdae362e1026ceb8a08e5a4b053ce5340b7/packages/accounts-password/password_server.js


通过分析, meteor 加密用户密码时, 先对密码做一次SHA256计算, 再bcrypt加密. 得到的字符串写入users表services.password.bcrypt中.


知道上面的算法很容易通过php写出效果一致的代码.

php中的bcrypt加密扩展文档在 http://cn2.php.net/manual/zh/book.password.php


最终代码:

    public function password_hash($password){
        return password_hash(hash('sha256', $password), PASSWORD_BCRYPT, ['salt'=>mcrypt_create_iv(22, MCRYPT_DEV_URANDOM)]);
    }
    public function password_compare($inputpassword, $hash){
        return password_verify(hash('sha256', $inputpassword), $hash);
    }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值