为什么 phpass 对于相同的输入字符串返回不同的哈希值?

发布于 2024-12-11 06:59:01 字数 309 浏览 0 评论 0原文

我习惯于让散列算法始终返回相同的散列。

为什么 phpass 库总是返回不同的哈希值?

和IV有关系吗? (我从来没有完全理解这个概念)

<?php

require __DIR__ . '/PasswordHash.php';

$hasher = new PasswordHash(11,false);

$password = 'bla123';

echo $hash = $hasher->hashPassword($password); // different for each request

I'm used to having hashing algorythms return always the same hash.

Why does phpass library return always different hashes?

Does it have something to do with the IV? (I never fully understood that concept)

<?php

require __DIR__ . '/PasswordHash.php';

$hasher = new PasswordHash(11,false);

$password = 'bla123';

echo $hash = $hasher->hashPassword($password); // different for each request

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

雨巷深深 2024-12-18 06:59:01

根据部分“如果用户已经存在怎么办?”这是这个库的正常行为

according to this section "What if the user already exists?" it's normal behaviour of this library

獨角戲 2024-12-18 06:59:01

它使用 crypt(),它已经为同一字符串生成不同的哈希值。它使用不同的密钥对每个密码进行哈希处理,并将密钥存储在哈希值中(它是公共的)。

It uses crypt(), which already generates different hashes for the same string. It hashes each password with a different key, and it stores the key inside the hash (it's public).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文