2017-12-13 2 views
0

Ich benutze crypto-js.js und Erstellen einer sha512 Funktion dort zum Erstellen einer Variablen hash1. Wir erstellen erfolgreich den Hash und dann Hash mit Passwort aktualisieren, aber danach nicht Digest-Funktion verwenden können.Digest ('hex') Funktion nicht mit CryptoJS

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 
    }; 
}; 

Weiß jemand, wie man das repariert?

Antwort

0

digest ist eine HMAC-Methode in der Node.js Krypto Modul. Die äquivalente Methode in CryptoJS ist finalize. Das Ergebnis von finalize ist ein CryptoJS WordArray Objekt. Um eine hexadezimale Zeichenfolge zu erhalten, verwenden Sie die WordArray in einem Kontext, in dem es als Zeichenfolge behandelt wird. Insbesondere ersetzen Sie:

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

mit:

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