2016-05-06 9 views
2

私はNodeJSアプリケーションにネイティブ暗号化モジュールを使用しようとしているが、私は非推奨メッセージ得続ける:NodeJS 6暗号は、非推奨メッセージのダイジェストについて不平を言っていますか?

(ノード:26)DeprecationWarningを: ダイジェストを指定せずにcrypto.pbkdf2は推奨されません。 https://github.com/nodejs/node/pull/4047

をしかし、私が見ることができるものから、私のコードは正確にas outlined in the docs構文に従っている:私はこれが原因ダイジェストが前進を期待変更セットにある知っているダイジェスト

を指定してください。他の誰も私がここで間違っているのを見ますか?

function verify (password, expected, callback) { 
    const combined = Buffer.from(expected, 'base64') 
    const saltBytes = combined.readUInt32BE(0) 
    const hashBytes = combined.length - saltBytes - 8 
    const iterations = combined.readUInt32BE(4) 
    const salt = combined.slice(8, saltBytes + 8) 
    const hash = combined.toString('binary', saltBytes + 8) 
    return crypto.pbkdf2(password, salt, iterations, hashBytes, 'sha512', (err, verify) => { 
    if (err) return callback(err, false) 
    return callback(null, verify.toString('binary') === hash) 
    }) 
} 

:それはどんな違いをした場合、これは非常に私はついにそれを考え出し掘り後slim version of the node:6

+0

興味深い...ドッキング用のコンテナの外でこれを実行すると、メッセージが表示されません – gordysc

答えて

0

内で実行されます。上記のコードセグメントとは関係ありません。現在、バージョン4.0.0になっているironモジュールを使用しています。現在公開されているバージョンでは、ダイジェストの引数が渡されないため、警告メッセージが生成されます。

彼らはalready committed code to correct thisですが、まだ公開されていません。これはすぐに解決するはずです。

関連する問題