- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试将 Django 应用程序中创建的一些用户迁移到 Node.js 应用程序。在 Django 应用程序中创建的用户已使用 BCryptSHA256PasswordHasher 哈希器对其密码进行哈希处理,并将其存储在 PostgreSQL 数据库中。我可以从 Postgres 获取整个密码字符串,这些密码字符串存储在表单中:
<algorithm>$<iterations>$<salt>$<hash>.
我想要做的是弄清楚如何获取已知密码(例如Password1),并使用Postgres中字段中的盐,获取Node.js哈希字符串以匹配Django字符串。这样我就可以对那些已经迁移过来的用户进行身份验证。
我已经多次尝试将 bcrypt 和 bcryptjs npm 用于 Node.js,但到目前为止我还没有成功。
使用任何 Node.js npm 的工作示例都很棒。
最佳答案
经过相当多的尝试和错误后,我设法解决了这个问题。这是解决方案:
var crypto = require('crypto'),
bcrypt = require("bcrypt");
exports.auth = function (password) {
var preHash = crypto.createHash('sha256').update(password).digest('hex');
var hash = bcrypt.hashSync(preHash, salt);
return hash;
}
其中盐参数应该是:
$2a$12$imuoSFEBx8JJh5L9cCDJKO
我唯一不清楚的是盐字符串“$2a$”的第一部分。在我的 Django 密码字段中,这实际上是“$2b$”,根据bcrypt page on Wikipedia是有效的,但是当尝试在传递给 bcrypt (以及 bcryptjs )的盐中使用 $2b$ 时,会引发错误。我可以解决这个问题,但也许 bcrypt 只需要更新。
关于django - 在 Node.js 应用程序中使用 BCryptSHA256PasswordHasher 验证在 Django 中哈希的密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32739491/
好的,我已经检查了许多不同的类似问题,但似乎没有任何类似情况可以解决我的问题,或者我遗漏了什么。 相关方法: private void ApplyPasswordToUser(string usern
好的,我已经检查了许多不同的类似问题,但似乎没有任何类似情况可以解决我的问题,或者我遗漏了什么。 相关方法: private void ApplyPasswordToUser(string usern
在身份的非核心版本中,PasswordHasher是非通用类型。它的HashPassword方法采用单个参数(要散列的密码)及其 VerifyHashedPassword方法只需要两个(之前由 Has
我目前正在试验 php 和 mysql,并尝试使用 html 表单创建一个简单的注册和登录页面。 到目前为止,我已经创建了一个注册表单,其中包含姓名、电子邮件和密码等用户信息。 为了安全地存储密码,我
我已经把我从http://www.openwall.com/phpass/下载的文件放了到 application/libraries 在我的 Controller 中,我正在使用这段代码 - $pa
我有一个 Registrations 表,新用户会被放入其中。稍后的过程会为该用户创建一个数据库,并从注册表中的数据(电子邮件和姓名)中插入一条 ASP.NET 身份用户记录。 我想对此进行扩展,以便
我有一个项目,我们需要将许多拥有纯文本密码的用户迁移到一个新数据库中,我们将在其中散列密码。 新系统使用 Entity Framework ,需要通过 Asp.Net Identity 框架进行身份验
这个问题在这里已经有了答案: Severity: 8192 Message: Methods with the same name as their class will not be constr
这个问题在这里已经有了答案: Severity: 8192 Message: Methods with the same name as their class will not be constr
我有一个具有以下构造函数的对象: public User(String name, String email, String password) { this.name = name;
我需要在数据库中存储用户名和密码。密码显然应该加密。我们确实有一些其他网站用来加密密码的旧代码,但我不确定这是否安全。 我正在研究使用 Asp.net Core PasswordHasher 类。 我
在网上看到一些帖子说ASP.Net core的hashig系统和full framework项目的区别。现在,我正在尝试使用 Identity accounting 和 ASP.Net core Id
我正在编写一个需要与现有 Java Play 框架应用程序配合使用的 Django 应用程序。 Play 应用程序使用 PasswordHash.java存储密码。它以冒号分隔的格式存储密码。每个散列
我正在使用以下代码 $q = $connection->prepare("INSERT INTO users (firstName, lastName, email, passwordHash) VA
我们正在将身份验证模块从 PHP 迁移到 Java。目前密码hash+salt使用BCrypt算法存储在数据库中。该值是使用 PHP 的 password_hash() 函数生成的。为了验证纯文本密码
我将 ASP.NET Identity 2 与 Entity Framework 5 一起使用(因为我们的 Oracle 数据提供程序不支持 EF6)。由于某种原因通过UserManager.Pass
我是一名优秀的程序员,十分优秀!