首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SHA散列以允许更长的bcrypt输入

问使用SHA散列以允许更长的bcrypt输入
EN

Stack Overflow用户
提问于 2012-07-10 21:24:21
回答 1查看 282关注 0票数 2

我正在研究几种语言的各种bcrypt实现,并注意到大多数语言的字符限制-具体地说,node-bcrypt、php的bcrypt和py-bcrypt都有72个字符的限制。

如果应用程序预先通过SHA-256或SHA-512校验和运行用户输入,以便为bcrypt启用更长的输入,其优点和缺点是什么?

EN

回答 1

Stack Overflow用户

发布于 2012-07-11 02:27:21

CLI应用程序发现here被限制为8-56个“字符”(包括8-56个“字符”)(它是C,所以我认为一个字符可以是任何字符)。天知道你为什么要为一些东西设置限制,然后你把它输入到基于密码的密钥派生函数中(几乎可以肯定的是,这将需要无限的输入)。

具有足够强度和输出大小的额外安全散列不会降低安全性。

在将结果提供给bcrypt库之前,将结果编码为十六进制,bcrypt库几乎肯定需要一个字符串(不要被“奇怪的”00h字节击中)。你最好使用SHA-256,我不认为多一点或少一点会有什么不同,如果你把它提供给bcrypt之后。否则,您可能会被迫使用base64。

最后,尽量不要陷入这种情况,执行非标准密码术几乎肯定是一件坏事。

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

https://stackoverflow.com/questions/11414310

复制
相关文章

相似问题

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