脚本宝典收集整理的这篇文章主要介绍了php – Blowfish盐长度为Crypt()函数?,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
这是他们给出的代码示例:
crypt('rasmuslerdorf','$2a$07$usesomesillystringforsalt$');
然后我自己测试了这个功能,注意到了一些.如果我使用20个字符的盐,我得到这个
// using 20 char salt: 00000000001111111111 crypt('rasmuslerdorf','$2a$07$00000000001111111111$'); // $2a$07$00000000001111111111$.6Th1f3O1SYpWaEUfdz7ieidkQOkGKh2
所以,当我使用一个20字符的盐,整个盐在输出.这是方便的,因为我不必将盐分存放在一个单独的地方. (我想用随机盐).我可以从生成的哈希中读出盐.
但是,如果我使用22个字符的盐作为文件说,或更长的盐,盐被切断在最后.
// using 22 char salt: 0000000000111111111122 crypt('rasmuslerdorf','$2a$07$0000000000111111111122$'); // $2a$07$000000000011111111112uRTfyykWmPPMWDRM/cUAlulrBkhVGlui // 22nd character of the salt is gone // using 25 char salt: 0000000000111111111122222 crypt('rasmuslerdorf','$2a$07$0000000000111111111122222$'); // $2a$07$000000000011111111112uRTfyYkWmPPMWDRM/cUAlulrBkhVGlui // Same hash was generated as before,21 chars of the salt are in the hash
问题2:那么盐的适当长度究竟是多少? 20? 22?更长?
问题3:另外,当查询密码的时候,读取哈希的盐是个好主意吗?而不是将盐储存在一个单独的领域,并从那里读取它. (这似乎是多余的,因为盐似乎包含在哈希中).
关于你的第三个问题:是的,你应该使用哈希本身的嵌入盐(和成本)参数读取和检查哈希.
以上是脚本宝典为你收集整理的php – Blowfish盐长度为Crypt()函数?全部内容,希望文章能够帮你解决php – Blowfish盐长度为Crypt()函数?所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。