2016-05-17 6 views
0

jsSHAをNodeJSに使用するブラウザコードを移植する必要があり、暗号モジュールを使用する予定ですが、何らかの理由でこの2つのコードが異なる結果を生成します。私は、彼らは同じでなければならないと信じています:SHA-1のNodeJS暗号とjsSHAの異なる結果

let s1 = crypto.createHmac('sha1', '1234').update('4321').digest('base64'); 

var hmacObj = new jsSHA("SHA-1", "TEXT"); 
hmacObj.setHMACKey('1234', "B64") 
hmacObj.update('4321') 
let s2 = hmacObj.getHMAC("B64"); 

console.log(`${s1} <===> ${s2}`); 
// EL8JVAKqxIzgv0ELy/9zDxzlKIc= <===> RvRFQNm8hvN+vwvp8zNxs/z6P2s= 

ありがとうございました。

+1

あなたは鍵がbase64であったことをjsSHAに語りました。あなたはノードにそれを伝えていませんでした。 – OrangeDog

答えて

1

これはあなたのjsSHAコードと同じ結果が得られます。

crypto.createHmac('sha1', new Buffer('1234', 'base64')) 
     .update('4321') 
     .digest('base64') 
関連する問題