使用CryptoJS找不到摘要(' hex')功能

时间:2017-12-13 15:52:33

标签: javascript salt cryptojs

我正在使用crypto-js.js并在那里创建一个sha512函数来创建变量hash1。我们成功创建了哈希,然后用密码更新哈希,但之后无法使用摘要功能。

var sha512 = function (password, salt) {

    var hash1 = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA512, salt); /** Hashing algorithm sha512 */

    hash1.update(password);

    var value = hash1.digest('hex');
    return {
        salt: salt,
        passwordHash: value
    };
};

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

digest是Node.js 加密模块中的HMAC方法。 CryptoJS中的等效方法是finalizefinalize的结果是CryptoJS WordArray对象。要获取十六进制字符串,请在将被视为字符串的上下文中使用WordArray。具体来说,替换你的:

    var value = hash1.digest('hex');

使用:

    var value = '' + hash1.finalize();