问题标签 [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.

0 投票
0 回答
443 浏览

ubuntu - 无法启动 Ruby(机架)应用程序 - 部署后,ubuntu 和 nginx(1.0.6)上的 rails 3.1.0 应用程序出现乘客(3.0.9)错误

这是说 bcrypt 未加载的错误。rails 应用程序没有使用 Devise 进行身份验证,并且 gem bcrypt 不在 Gemfile 中。有时,网络服务器会抛出错误,说生成服务器无法启动。gem list 显示 bcrypt-ruby 3.0.1 和 3.0.0 都已安装。

上限部署:检查返回:

对这个问题有什么想法吗?谢谢!

0 投票
3 回答
9345 浏览

symfony - Symfony2 自定义密码编码器(bcrypt)

我编写了自己的密码编码器,它实现了PasswordEncoderInterface

编码器注册为 id 的服务bcrypt.password.encoder。但我不知道,如何告诉 symfony 使用它。目前app/config/security.yml看起来像这样:

顺便说一句,我没有使用任何学说实体。

编辑Symfony\Component\Security\Core\User\User是我的用户对象。我修改security.yml了一下:

这会导致致命错误:

这对我来说没有任何意义。

0 投票
1 回答
878 浏览

python - auth 中的 bcrypt 机制(无匹配哈希)

我正在尝试使用 python (pymongo) 和 bcrypt 为 mongodb 实现登录方法。当我尝试比较哈希时,问题就来了,它们总是不同的:$。

这是我的测试代码(首先我把一个密码散列的用户放入 mongodb):

使用蟒蛇 scrypt :

一旦我们将它放入数据库中,我正在尝试创造魔法:D:

但是当我看到哈希值时问题就来了:

这和我之前生成的完全不同!!!. 另外我一直在阅读我不需要保存 bcrypt.gensalt(12) 。所以我有点困惑。

感谢阅读,对我的身份验证实施有什么问题有什么帮助吗?

posdata(更多代码)

是的,我确信数据库给了我正确的字段。

0 投票
1 回答
1243 浏览

python - 使用我自己的 gensalt() - 足够安全吗?

由于bcrypt的机制是:

我想将它用于身份验证。问题是我想从客户端制作它,所以我需要客户端中的部分。

我想,如果我使用我自己的gensalt(username)——它从用户名生成一个盐——对客户端来说总是使用与其他用户不同的相同盐可能是件好事。

这是 bcrypt 和我的项目的一个很好的近似值,还是我打破了 bcrypt 机制的安全性?

我在想,如果有人想解密密码,就不可能使用彩虹表,因为他必须为每个用户使用一个。我在安全问题方面没有足够的经验,不知道这是否会好。也许它hashpw的速度足以在 PC 上进行蛮力。

0 投票
2 回答
32292 浏览

grails - Bcrypt 为相同的输入生成不同的哈希?

我刚刚在我的新 grails 项目中添加了注册功能。为了测试它,我通过提供电子邮件和密码进行了注册。在将密码保存到数据库之前,我正在使用 bcrypt 算法对密码进行哈希处理。

但是,当我尝试使用注册时提供的相同电子邮件和密码登录时,登录失败。我调试了应用程序,发现当我尝试与数据库中已经散列的散列进行比较时,为相同密码生成的散列不同,因此登录失败(LoginController 中的 Registration.findByEmailAndPassword(params.email,hashPassd) .groovy 返回 null)。

这是我的域类 Registration.groovy:

这是我的 LoginController.groovy:

这是我的 Config.groovy 中的一个片段,告诉 grails 使用 bcrypt 算法来散列密码和密钥轮数:

0 投票
1 回答
9307 浏览

php - 散列“记住我”cookie 令牌的最佳方法

我正在尝试实现“记住我”功能,遵循此处提供的指南:基于表单的网站身份验证的权威指南,以及此处: http: //fishbowl.pastiche.org/2004/01/19/persistent_login_cookie_best_practice/

似乎“cookie令牌”在存储在数据库中时应该进行哈希处理(如果攻击者可以访问数据库,未哈希处理的令牌看起来像普通的登录名/密码,允许登录网站)。

寻找一个好的散列算法,我发现了这个使用bcrypt的推荐技术:https ://stackoverflow.com/a/6337021/488666

我已经尝试过了,发现建议的轮数 (15) 会导致处理时间非常慢(哈希 2,3s + 在 Intel Core 2 Duo E8500 + 4 GB RAM 上验证 2,3s)

我知道散列算法在阻碍攻击者方面应该相对较慢,但在那个级别上,它会阻碍用户使用网站:)

您认为更少的轮次(例如 7 轮,将处理时间降低到 10 毫秒 + 10 毫秒)就足够了吗?

0 投票
1 回答
875 浏览

java - 在 Glassfish 3.0 安全领域中使用 bcrypt

我目前正在将 Web 应用程序中的密码处理从 unsalted MD5 更改为 bcrypt。这是一个标准的 JSF 应用程序,在 Glassfish 3.0.1 上运行。
使用 jBCrypt 可以很容易地创建和存储哈希值。但是现在我不知道如何在用户登录时在实际身份验证中使用 bcrypt。由于它是 JSF,因此使用 HttpServletRequest#login 方法触发登录,其余的由 Java EE 堆栈和 Glassfish 处理。

简单地将安全领域摘要算法设置为“无”,然后在将密码传递给登录方法之前对其进行哈希处理是行不通的,因为我没有在创建哈希时最初使用的生成的盐 jBCrypt。我也考虑过提供自定义安全领域的实现,但对于这么小的变化来说,这似乎有很多工作。

有没有更简单的解决方案?还是有人已经实施了类似的安全领域?

0 投票
3 回答
470 浏览

php - 我正在为 php 使用 bcrypt,并希望潜在的黑客需要很长时间才能登录

我引用了这个答案:https ://stackoverflow.com/a/4766811/1114105

我们重新对密码进行哈希处理,但实际上我们并没有对哈希做任何事情(我们在 CheckPassword 函数中使用 POST 提交的明文密码进行身份验证)。黑客不能绕过重新散列部分吗?

下面是我的伪代码。

如果密码/用户名由 POST 提交,并且 $row['password'] 是 sql 中的散列密码。

注意:我发现工作因素对 CheckPassword 运行的时间没有影响。它只会增加 HashPassword 的时间。

0 投票
1 回答
2496 浏览

java - jBCrypt 替代方案?官方线程安全,拥有更大的社区

要散列密码(单向),看起来bcrypt 是最好的

我即将开始使用jBCrypt,但我有一些担心:

是否有每个人都在使用的类似的、更主流的库,但我以某种方式错过了?(Java,开源)
还是它实际上是“最主流”的?

0 投票
2 回答
8111 浏览

python - 如何为 bcrypt.hashpw 设置盐?

第二行出现错误。

该怎么办?我每次都需要设置一些默认的盐值而不是随机盐。