首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >盐和成本是什么意思?

盐和成本是什么意思?
EN

Stack Overflow用户
提问于 2014-08-30 19:37:54
回答 1查看 9.2K关注 0票数 9

我一直使用MD5加密密码,但我读到不应该再使用它,而应该使用bcrypt。

我使用zendframework 2,其中我发现它描述bcrypt配置如下:

代码语言:javascript
运行
复制
$bcrypt = new Bcrypt(array(
    'salt' => 'random value',
    'cost' => 11
));

盐是多少钱?他们怎么会被使用呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-30 19:44:59

salt是添加到要散列字符串中的随机文本。例如,您不散列my_secret_password,而是散列类似于1jfSLKe$*@SL$#)(Sslkfs$34:my_secret_password的东西。这样做的原因是,即使整个哈希密码数据库被盗,也很难设置一个“彩虹表”来强行设置密码。如果每个密码有一个不同的盐,只有最弱的密码(如“密码”或"123456",你应该禁止无论如何)将被猜测。

成本是衡量运行哈希的次数--它有多慢。你想慢慢来。同样,如果散列密码被窃取,这是一个冗余的安全层。这使得用暴力强迫任何东西的代价太高了。

你可以在这里读到一个很好的描述:https://security.stackexchange.com/a/51983/35405

票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25586073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档