Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用bcrypt(PHP)比较两个哈希_Php_Security_Password Protection_Bcrypt - Fatal编程技术网

使用bcrypt(PHP)比较两个哈希

使用bcrypt(PHP)比较两个哈希,php,security,password-protection,bcrypt,Php,Security,Password Protection,Bcrypt,在我的数据库中,我用 password_hash($user->getPassword(), PASSWORD_BCRYPT); 在登录表单中,用户输入此密码,我将密码编码为bcrypt字符串,并将加密的密码(因为我没有SSL)提交给服务器 所以我的问题是,是否有可能比较使用bcrypt生成的两个散列 在登录表单中,用户输入此密码,我将密码编码为bcrypt字符串,并将加密的密码(因为我没有SSL)提交给服务器 停止您正在做的事情,去购买SSL证书。有几个景点(就是一个)你可以免费得到一

在我的数据库中,我用

password_hash($user->getPassword(), PASSWORD_BCRYPT);
在登录表单中,用户输入此密码,我将密码编码为bcrypt字符串,并将加密的密码(因为我没有SSL)提交给服务器

所以我的问题是,是否有可能比较使用bcrypt生成的两个散列

在登录表单中,用户输入此密码,我将密码编码为bcrypt字符串,并将加密的密码(因为我没有SSL)提交给服务器

停止您正在做的事情,去购买SSL证书。有几个景点(就是一个)你可以免费得到一个,或者你可以花7美元给像Name便宜这样的人

您已经实现了安全性的幻觉。在客户端对密码进行散列不会带来任何有意义的安全好处-任何MITM攻击者只需将JavaScript的调整副本提供给他们攻击的人(或者截取散列密码,它本质上是用户在方案中的真实密码)

在登录表单中,用户输入此密码,我将密码编码为bcrypt字符串,并将加密的密码(因为我没有SSL)提交给服务器

停止您正在做的事情,去购买SSL证书。有几个景点(就是一个)你可以免费得到一个,或者你可以花7美元给像Name便宜这样的人


您已经实现了安全性的幻觉。在客户端对密码进行散列不会带来任何有意义的安全好处-任何MITM攻击者只需将JavaScript的调整副本提供给他们正在攻击的人(或者截取散列的密码,它本质上是用户在方案中的真实密码).

不。除非他们使用完全相同的盐和成本参数。啊,好的,这意味着如果我使用相同的盐和成本,这是可能的吗?但是我认为在javascript中显示盐和成本是非常糟糕的…@user2831042盐和成本不是敏感项。您应该担心您正在为该站点提供服务,并且您的关键安全功能未加密且可攻击。@user2831042如果您需要对多个哈希使用同一个salt,则说明您做错了。正如ceejayoz所说,获取SSL证书。可能是编号的副本。除非他们使用完全相同的salt和cost参数。啊,好的,这意味着如果我使用相同的salt和cost,这是可能的吗?但是我认为在javascript中显示盐和成本是非常糟糕的…@user2831042盐和成本不是敏感项。您应该担心您正在为该站点提供服务,并且您的关键安全功能未加密且可攻击。@user2831042如果您需要对多个哈希使用同一个salt,则说明您做错了。正如ceejayoz所说,获取一个SSL证书