【发布时间】:2013-10-07 23:06:38
【问题描述】:
我目前正在学习 NodeJS 中的加密和密码安全。我正在使用当前正在使用 PBKDF2 的当前示例,我想将其切换为使用 SHA256。这可能和/或有意义吗?我该怎么办?
var crypto = require('crypto');
var len = 128;
var iterations = 13000;
module.exports = function (pwd, salt, fn) {
if (3 == arguments.length) {
crypto.pbkdf2(pwd, salt, iterations, len, fn);
} else {
fn = salt;
crypto.randomBytes(len, function(err, salt){
if (err) return fn(err);
salt = salt.toString('base64');
crypto.pbkdf2(pwd, salt, iterations, len, function(err, hash){
if (err) return fn(err);
fn(null, salt, hash);
});
});
}
};
【问题讨论】:
-
这是一个相当不错的密码哈希总结:crackstation.net/hashing-security.htm
-
请不要使用 sha256 进行密码散列 security.stackexchange.com/questions/211/…
标签: javascript node.js cryptography