任何人都可以幫我解決這個問題嗎?如何解決javascript程序的這個錯誤
TypeError: Salt must be a buffer
at TypeError (native)
at pbkdf2 (crypto.js:579:20)
at Object.exports.pbkdf2Sync (crypto.js:570:10)
這是函數:
function hash (input, salt) {
// How do we create a hash?
var hashed = crypto.pbkdf2Sync(input, salt, 10000, 512, 'sha512');
return ["pbkdf2", "10000", salt, hashed.toString('hex')].join('$');
}
這就是我如何發送參數:
var dbString = rows[0].password;
var salt = dbString.split('$')[2];//here i am taking the 2nd column value from a table with 3 columns
var hashedPassword = hash(new Buffer(password, 'binary'), salt); // then passing it to the function hash
您是否嘗試過'新的緩衝區(鹽,「二進制「)'? –
我試過這個,但沒有刪除錯誤。 –
請勿使用「需要解決此錯誤」形式的標題。幾乎所有的帖子都是爲了解決一些錯誤。描述標題**中的錯誤**。要解決您的具體問題,請嘗試閱讀錯誤消息的歷史悠久的方法,然後再次閱讀,然後再次閱讀。 – 2017-08-27 07:13:44