gpt4 book ai didi

node.js - bcrypt 在 Nodejs 服务器上非常慢

转载 作者:行者123 更新时间:2023-12-03 08:40:49 28 4
gpt4 key购买 nike

我的 test.js 文件中有以下代码:

const bcrypt = require("bcrypt");
const { performance } = require("perf_hooks");

let hash = "$2b$20$v38KOyF2WSaJI/wcxSKN6u1iyvjfOu.Tjs3QHKCW2O4nCt0rTUgMu";
let password = "7!E:J|8yvGw$v]xXfKngkUAw3]EQ?B";

async function checkPassword() {
let t = performance.now();
if (await bcrypt.compare(password, hash)) {
console.log("Passed! ", performance.now() - t);
} else {
console.log("Failed! ", performance.now() - t);
}
}

checkPassword();

然后我运行node test.js

我得到的输出是:

Passed!  59178.30090880394          < for a correct password
Failed! 59386.33465099335 < for an incorrect password

对于基本检查来说,这几乎需要一分钟! 这是预期的结果吗?

我的 package.json 正在使用:

"dependencies": {
"bcrypt": "^5.0.0",
...

我在控制台中没有收到任何错误,一切都正确完成。我要散列的密码是

7!E:J|8yvGw$v]xXfKngkUAw3]EQ?B

是不是太长了?我不完全理解 bcrypt 的工作原理,以防不明显!

最佳答案

这是你的问题:

$2b$20$v38KOyF2WSaJI/wcxSKN6u1iyvjfOu.Tjs3QHKCW2O4nCt0rTUgMu

这意味着:

  • 版本:2b
  • 成本系数:20

成本系数 20

在当前硬件上,成本因子为 12 大约需要 250 毫秒。

<表类=“s-表”><标题>成本时间 <正文>12250 毫秒13500 毫秒141秒152秒164秒178秒1816秒1932 秒2054秒

关于node.js - bcrypt 在 Nodejs 服务器上非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62819302/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com