【问题标题】:want to verify how use bcrypt想验证如何使用 bcrypt
【发布时间】:2012-04-22 01:46:47
【问题描述】:

对于某些人和我来说,似乎理解 bcrypt 的全部含义并不清楚,因为我仍在阅读 SOF 用户的问题。我在这里有一个关于如何使用 bcrypt 哈希的示例:How do you use bcrypt for hashing passwords in PHP

据我了解,bcrypt 是单向字符串,如果是这样,则意味着我只能将其用于散列。有一些文章提到bcrypt也用于加密,这对我来说毫无意义,那是因为如果我可以加密一个字符串,就意味着我可以解密它。

问题是如果 bcrypt 可以用于加密,那么如何?谁能举个例子好吗??

谢谢,

【问题讨论】:

    标签: security encryption hash bcrypt


    【解决方案1】:

    bcrypt 散列函数/KDF 仅用于散列。

    blowfish,bcrypt 所基于的是分组密码,即用于加密。

    还有一个名为bcrypt 的无关程序,它使用基于河豚的加密。

    不幸的是,很多人将bcryptblowfish 互换使用,这会导致混淆。

    【讨论】:

    • 非常感谢您的澄清。所以我原来的帖子上面的链接中的内容是使用 bcrypt 进行散列。而河豚是一个基于 bcrypt 的函数。好的,很高兴知道。在这种情况下,如果我想加密信息,我必须使用河豚来做到这一点。
    • @Fxdigi 恰恰相反。 bcrypt 哈希基于 blowfish。对于加密,您可以使用河豚,但我更喜欢 AES。
    【解决方案2】:
    php 中的

    bcrypt() 是单向哈希函数,因此不适合双向加密/解密。

    但是,有一些可用的软件包称为bcrypt,它不是 PHP 函数,它只是允许两种方式(加密和解密)的河豚密码的实现。

    所以 bcrypt 可以解密但是 bcrypt() 不能

    【讨论】:

    • 谢谢约翰,很高兴知道。我猜 [phpass] 与 bcrypt 和一些示例(openwall.com/phpass)有关,但我很困惑,因为很多人使用相同的术语来表示不同的用途。再次感谢您的信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-20
    • 1970-01-01
    相关资源
    最近更新 更多