使用现有密码哈希和盐创buildHMAC
由于迁移原因,我需要将现有的密码和盐放入Firebase。 我使用Google身份工具包将帐户上传到Firebase。 该工具包允许我创build用户,并要求使用SHA-1密码。
var user1 = { localId: userId, email: email, salt: new Buffer('salt-1'), passwordHash: crypto.createHmac('SHA1', this.hashKey).update('a password' + 'salt-1').digest() };
以上是将要上传到服务器的内容。 有没有办法crypto.createHmac与现有的SHA-1散列和盐? 我试过用值来replacepasswordHash和salt,但是它们需要以与createHmac编码相同的方式进行编码。
参见HMAC实施 。
关键的HMAC代码是:
hash(o_key_pad ∥ hash(i_key_pad ∥ message))
所以看起来答案是否定的,因为填充密钥需要与消息级联。
您可以将现有的HMAC密钥作为Google Identity Toolkit UploadAccounts API请求中的signerKey传递: https : //developers.google.com/identity/toolkit/web/reference/relyingparty/uploadAccount
- Node.js的身份validation解决scheme
- 隐藏匿名用户的一些HTML块
- Nodejs,通过httpsauthentication并redirect到http
- SocketIO + MySQLauthentication
- 如何将一个hapi auth插件变成可选的
- 如何使用Node.js和Passport进行身份validation后,使用自己的ID将用户redirect到主页?
- Firebase函数signInWithCustomToken与Node.js一起未定义
- 在hapi.jsauthenticationscheme和策略之间有什么区别?
- 带有Connect基本身份validation的Expressj不会设置请求用户