Javascript bcrypt.js compare方法如何知道腌制轮数?
作为地址,为了将散列与纯文本进行比较,我们必须实现Javascript bcrypt.js compare方法如何知道腌制轮数?,javascript,node.js,hash,bcrypt,Javascript,Node.js,Hash,Bcrypt,作为地址,为了将散列与纯文本进行比较,我们必须实现compare函数,如下所示: bcrypt.compare(myPlaintextPassword, hash).then(function(result) { //do stuff }); 但似乎没有办法区分盐渍的作用。函数如何获得该数字?bcrypt输出如下:$2a$10$n9qo8uloickkgx2zmrzomyeijzagcfl7p92ldgxad68ljzdl17lhwy 它指定的成本参数为10,表示2^10个密钥扩展回合。 sa
compare
函数,如下所示:
bcrypt.compare(myPlaintextPassword, hash).then(function(result) { //do stuff });
但似乎没有办法区分盐渍的作用。函数如何获得该数字?bcrypt输出如下:
$2a$10$n9qo8uloickkgx2zmrzomyeijzagcfl7p92ldgxad68ljzdl17lhwy
它指定的成本参数为10,表示2^10个密钥扩展回合。
salt是N9qo8uLOickgx2ZMRZoMye
,密码散列是IjZAgcfl7p92ldGxad68LJZdL17lhWy
因此,所有需要的信息都输入到
散列参数中。bcrypt输出如下:$2a$10$n9qo8uloickkgx2zmrzomyeijzagcfl7p92ldgxad68ljzdl17lhwy
它指定的成本参数为10,表示2^10个密钥扩展回合。
salt是N9qo8uLOickgx2ZMRZoMye
,密码散列是IjZAgcfl7p92ldGxad68LJZdL17lhWy
因此,所有需要的信息都输入到散列
参数中
阴影中哈希字符串中的前缀“$2a$”或“$2b$”(或“$2y$”)
密码文件指示哈希字符串是模块化中的bcrypt哈希
密码格式。散列字符串的其余部分包括成本
参数、128位salt(基数64编码为22个字符)和184
结果哈希值的位(基数64编码为31
字符)。基数-64编码使用unix/crypt字母表,
并且不是“标准”Base-64。“成本”参数指定了成本
键扩展迭代计数为2的幂,这是
密码算法
例如,影子密码记录
$2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy指定
成本参数为10,表示2^10个关键扩展回合。盐
是n9qo8uloickkgx2zmrzomye,结果哈希是
IjZAgcfl7p92ldGxad68LJZdL17lhWy。根据标准惯例,用户的
密码本身不被存储
有一个完整的维基百科条目:
阴影中哈希字符串中的前缀“$2a$”或“$2b$”(或“$2y$”)
密码文件指示哈希字符串是模块化中的bcrypt哈希
密码格式。散列字符串的其余部分包括成本
参数、128位salt(基数64编码为22个字符)和184
结果哈希值的位(基数64编码为31
字符)。基数-64编码使用unix/crypt字母表,
并且不是“标准”Base-64。“成本”参数指定了成本
键扩展迭代计数为2的幂,这是
密码算法
例如,影子密码记录
$2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy指定
成本参数为10,表示2^10个关键扩展回合。盐
是n9qo8uloickkgx2zmrzomye,结果哈希是
IjZAgcfl7p92ldGxad68LJZdL17lhWy。根据标准惯例,用户的
密码本身不被存储
有一个完整的维基百科条目: