【问题标题】:Bcrypt password_compat PHP libraryBcrypt password_compat PHP 库
【发布时间】:2013-11-19 11:52:57
【问题描述】:

https://github.com/ircmaxell/password_compat

我正在使用上面的库为我的网站实施 bcrypt。如描述中所述,password_verify() 可用于检查密码是否对应于特定哈希。这是我在用户登录时应该使用的吗?获取他们输入的密码并将其与数据库中的哈希值进行比较?

第二个问题,加盐从何而来?我不需要为每个用户在数据库中存储一个盐吗?

【问题讨论】:

    标签: php bcrypt


    【解决方案1】:

    是的,password_verify 是您用来根据哈希版本验证明文密码的函数。

    加盐已经是过程的一部分,生成的哈希包含随机盐。您无需手动执行此操作。

    确实很简单:

    $registeredPassword = 'password';
    $hashedPassword     = password_hash($registeredPassword);
    // store $hashedPassword in database...
    
    $enteredPassword = 'password';
    if (password_verify($enteredPassword, $hashedPassword)) {
        // login successful
    }
    

    password_hash 实现负责安全的加盐和散列。请务必阅读手册及其示例和注释:http://php.net/manual/en/function.password-hash.phphttp://php.net/manual/en/function.password-verify.php

    【讨论】:

      猜你喜欢
      • 2012-09-09
      • 1970-01-01
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 1970-01-01
      • 2014-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多