栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在数据库中存储Bcrypt哈希密码时应使用哪种列类型/长度?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在数据库中存储Bcrypt哈希密码时应使用哪种列类型/长度?

bcrypt的模块化crypt格式包括

  • $2$
    $2a$
    $2y$
    识别哈希算法和格式
  • 表示费用参数的两位数字值,后跟
    $
  • 一个53字符长的基64编码的值(它们使用的字母表
    .
    /
    0
    -
    9
    A
    -
    Z
    a
    -
    z
    也就是不同的标准base 64编码字母表)由以下组成:
    • 盐的22个字符(有效地是132个解码位中的128个位)
    • 31个字符的加密输出(实际上只有186个解码位中的184位)

因此,总长度分别为59或60个字节。

使用2a格式时,需要60个字节。因而对于MySQL的,我会建议使用

CHAr(60)BINARY
BINARY(60)
(见的 __bin_ 和 二进制
排序规则
有关的差异信息)。

CHAR
不是二进制安全的,相等性不仅仅取决于字节值,还取决于实际的排序规则;在最坏的情况下
A
被视为等于
a
。见的
_bin
binary
排序规则以获取更多信息。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390636.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号