首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python bcrypt和node.js bcrypt

python bcrypt和node.js bcrypt
EN

Stack Overflow用户
提问于 2014-08-06 16:03:48
回答 1查看 1.4K关注 0票数 3

我有一个python脚本,它将用户数据导入到mongodb中,它使用bcrypt来散列用户的密码。

来自mongodb的数据也将在node.js web应用程序中使用,什么是确保py-bcrypt生成的散列相同的正确方法!

在运行node.js版本时,我得到了这样的结果:

代码语言:javascript
复制
> bcrypt.genSalt(10, function(err, salt) {
... bcrypt.hash("a", salt, function(err, hash) {
..... console.log(hash);
..... });
... });
undefined
> $2a$10$tOT8MN1.3gsb6jWVL2hMRe0PHnJnXCxJX9xBewNl.2iRDnZCV/NeC

在python中

代码语言:javascript
复制
>>> import bcrypt
>>> password =b"a"
>>> hashed = bcrypt.hashpw(password, bcrypt.gensalt(10))
>>> hashed
'$2a$10$RzKqQppa3Y7ZZV8f7Ay5COFB5GMEGu7aLH7Fe2HchCyYF1gWVMZ/m'

使用node生成的散列比较python中的散列,返回:

代码语言:javascript
复制
>>> node_hash = b"$2a$10$tOT8MN1.3gsb6jWVL2hMRe0PHnJnXCxJX9xBewNl.2iRDnZCV/NeC"
>>> if bcrypt.hashpw(password, node_hash) == node_hash:
...     print("It Matches!")
... else:
...     print("Does not match")
... 
It Matches!

有没有办法在python中创建一个用于node.js应用程序的bcrypt哈希?

EN

回答 1

Stack Overflow用户

发布于 2014-08-06 16:14:11

是的,和在Node中一样,传入散列作为第二个参数进行检查。用不同的随机盐创建一个不应该匹配。

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

https://stackoverflow.com/questions/25155194

复制
相关文章

相似问题

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