首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在密码哈希中使用microtime()

在密码哈希中使用microtime()
EN

Stack Overflow用户
提问于 2015-07-29 21:33:04
回答 1查看 327关注 0票数 1

我看到了一个使用microtime()进行密码散列的示例,如下所示

代码语言:javascript
复制
 public function create_hash($value)
{
    return $hash = crypt($value, '$2a$12$'.substr(str_replace('+', '.', base64_encode(sha1(microtime(true), true))), 0, 22));
}

我想知道如何验证散列,并确保用户输入的密码与使用微时时保存在数据库中的密码相等?!

这就是哈希验证的代码。

代码语言:javascript
复制
    private function verify_hash($password,$hash)
{
    return $hash == crypt($password, $hash);
}

最后一段代码是如何验证哈希的?(加密方法)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-29 21:42:45

从PHP5.5开始,您可以使用password_hash()password_verify()对密码进行散列,这比使用crypt()更方便。

若要散列密码:

代码语言:javascript
复制
$hash = password_hash( $password, PASSWORD_DEFAULT );

然后,要验证用户在散列中输入了哪些内容:

代码语言:javascript
复制
if ( password_verify( $password, $hash )) {
    // Password is good
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31711540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档