问题标签 [bcrypt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 使用 bcrypt 作为用户密码
我正在使用phpass的 bcrypt 功能在我的网站上散列密码。现在,它真的行不通了。试图与CheckPassword
函数进行比较是行不通的。我对通过我用来解密哈希的每个函数输出的每个字符串进行了大量调试,得出的结论是 bcrypt 生成的哈希是非常随机的。因此,新生成的明文密码哈希永远不会与我数据库中的哈希匹配。真的吗?如果是这样,我到底要如何让它工作?源代码相当简单。
python - 如何使用 bcrypt 将纯文本密码与散列密码进行比较?
我想bcrypt
用来散列密码,然后验证提供的密码是否正确。
散列密码很容易:
如何将纯文本密码与存储的哈希进行比较?
delphi - Delphi 是否有可用的 bcrypt 实现?
我正在尝试找到bcrypt
可以在 Delphi 中使用的实现。谷歌搜索给我带来的唯一有用的东西是这个下载页面,其中包含一个名为bcrypt.h
. 但是当我查看它提供的功能时,bcrypt.h
似乎实际上并没有包含任何使用 Blowfish 算法来散列密码的方法!
我在 C 中找到了一些 bcrypt 实现,我可以从中构建一个 DLL 并链接到它们,但它们似乎都需要 *nix 或特定于 GCC,所以这也不起作用!
这有点把我逼到了墙角。我认为找到一个实现会很容易,但似乎根本不是这样。有谁知道我在哪里可以得到一个?
java - 如何使用 jBCrypt 进行密码哈希比较?
我无法使用 BCrypt 的 checkpw(plaintextpw, previoushash) 方法获取明文密码和以前的哈希值来匹配。
在注册 servlet 中,我获取输入的密码,使用 BCrypt 的 hashpw(password, genSalt) 方法对其进行哈希处理并将其存储在数据库中。
在登录 servlet 中,我从数据库中获取该哈希,并使用 BCrypt 的 checkpw 来查看它是否与输入的密码匹配。
它永远不会匹配。这在我的常规 Java 应用程序中运行良好,只是在 web 应用程序中不行。没有其他人有这个问题,所以我想我一定做错了:
BCrypt API 非常简单 -这里
我没有存储盐,因为使用 BCrypt 你应该不必存储 - 那我做错了什么?
encryption - 使用 CNG 和 BCRYPT_KDF_SP80056A_CONCAT KDF 的问题
我正在处理实现 CNG ECDH,然后我尝试使用 BCRYPT_KDF_SP80056A_CONCAT KDF 派生对称 AES256 密钥 (BCryptDeriveKey())。我遇到了问题(我总是返回 0xc000000d 状态返回。)
我已经成功生成了一个共享密钥,并且我创建了缓冲区 desc“BCryptBufferDesc”,其中包含一个“BCryptBuffer”数组,其中包含 1 个 AlgorithmID、1 个 PartyU 和 1 个 PartyV“其他信息”。我想我已经正确定义和填充了所有结构。我只是为 PartyU 和 PartyV 字节选择一些“值”(我尝试了 1 字节和 16 字节,但我得到了相同的结果)。NIST 文档没有详细说明其他信息应该是什么。
我已经按照 Microsoft 网站来创建这些结构,使用它们的字符串、定义等。我尝试使用标准 L"HASH" kdf,它可以工作,我在两个“边”上都得到了相同的派生密钥,但使用了连接KDF 我总是得到相同的 0xC000000D 状态..
有没有其他人能够成功使用 BCRYPT_KDF_SP80056A_CONCAT CNG KDF?如果你这样做了,你有什么提示吗?
c - 推荐的 Bcrypt C 实现是什么?
C 语言中至少有两个 Bcrypt 实现:
我应该使用哪一个作为新项目的基础?请注意,我不需要向后兼容,因此我的选择将完全取决于被认为是更新和维护的任何实现。另外,我很好奇哪个被用作大多数非 C 语言绑定的基础。
node.js - 无法在 Centos 服务器上安装 bcrypt node.js 模块
我正在尝试在 CentOS 服务器上安装 bcrypt,但出现以下错误:
我能做些什么来解决这个问题?谢谢,
security - 密码保护 - bcrypt 与登录时强制延迟?
我一直在做很多关于在数据库中安全存储密码的研究,bcrypt似乎作为最安全的哈希算法之一到处出现,所以我可能会用它来存储我网站的密码(用 PHP 编写)。它的主要卖点之一似乎是它非常慢,因此有助于减缓蛮力/字典攻击。从字面上看,我读过的每一篇文章都提到了 bcrypt 有多棒,因为它很慢,因此可以防止暴力攻击。
所以,我的问题是:我不能在使用 PHP 登录失败后手动让我的代码暂停一两秒钟sleep()
吗?为什么 bcrypt 很慢如此重要?我的印象是我可以使用任何加密算法(假设它和 bcrypt 一样加密),在登录失败时添加 PHP sleep(),并且对暴力/字典攻击的防御能力与bcrypt。
spring - 使用 spring-security-bcrypt 插件在 Grails 中集成 bcrypt
我想在我的 grails 项目中使用 bcrypt 散列算法,而不是它的 defaultSHA-256 消息摘要算法。要启用 bcrypt,您只需使用grails install-plugin spring-security-bcrypt
命令。
您可以通过将其添加到以下内容来自定义键控轮次BuildConfig.groovy
:
我的问题是,我需要做的就是将 bcrypt 设置为我的密码算法吗?当我从spring-security-core生成的域类中使用此方法时,它是否会自动使用bcrypt算法:
如何检查 bcrypt 是否正在处理我的项目?