首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >nodejs中的bcryptjs密码加密

nodejs中的bcryptjs密码加密

作者头像
ccf19881030
发布于 2020-02-23 17:29:34
发布于 2020-02-23 17:29:34
4.7K0
举报
文章被收录于专栏:ccf19881030的博客ccf19881030的博客

本文转载自nodejs中的bcryptjs密码加密

bcryptjs密码加密

bcryptjs是一个第三方密码加密库,是对原有bcrypt的优化,优点是不需要安装任何依赖,npmjs地址为:https://www.npmjs.com/package/bcryptjs

引入bcryptjs库

npm install bcryptjs

代码语言:javascript
复制
var bcrypt = require('bcryptjs');

同步用法(Sync)

生成hash密码

代码语言:javascript
复制
var bcrypt = require('bcryptjs');
var salt = bcrypt.genSaltSync(10);
var hash = bcrypt.hashSync("B4c0/\/", salt);
// Store hash in your password DB. 

密码验证

代码语言:javascript
复制
// Load hash from your password DB. 
bcrypt.compareSync("B4c0/\/", hash); // true 
bcrypt.compareSync("not_bacon", hash); // false 

快速生成hash值

代码语言:javascript
复制
var hash = bcrypt.hashSync('bacon', 8);

异步用法(Async)

生成hash密码

代码语言:javascript
复制
var bcrypt = require('bcryptjs');
bcrypt.genSalt(10, function(err, salt) {
    bcrypt.hash("B4c0/\/", salt, function(err, hash) {
        // Store hash in your password DB. 
    });
});

密码验证

代码语言:javascript
复制
// Load hash from your password DB. 
bcrypt.compare("B4c0/\/", hash, function(err, res) {
    // res === true 
});
bcrypt.compare("not_bacon", hash, function(err, res) {
    // res === false 
});
 
// As of bcryptjs 2.4.0, compare returns a promise if callback is omitted: 
bcrypt.compare("B4c0/\/", hash).then((res) => {
    // res === true 
});

快速生成hash值

代码语言:javascript
复制
bcrypt.hash('bacon', 8, function(err, hash) {
});

参考链接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • bcryptjs密码加密
  • 引入bcryptjs库
  • 同步用法(Sync)
    • 生成hash密码
    • 密码验证
    • 快速生成hash值
  • 异步用法(Async)
    • 生成hash密码
    • 密码验证
    • 快速生成hash值
  • 参考链接
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档