什么是来自JavaScript的DigestUtils sha256编码?

时间:2013-01-21 08:49:10

标签: javascript apache-commons sha sha256

我调用以下内容并创建密码哈希。

ByteString password = ByteString.copyFrom(DigestUtils.sha256("mypassword"));

但是现在我需要从客户端(JavaScript)发送sha256转换的密码消息。我厌倦了使用CryptoJS如下

 var pass = CryptoJS.SHA256(document.getElementById('password').value);
    var passhash = pass.toString(CryptoJS.enc.Latin1)
    login(passhash);

我尝试了所有Base64,Latin1和Hex类型来获取字符串。但它不会产生与Java相同的密码

1 个答案:

答案 0 :(得分:1)

问题在于字符编码。以下修复了问题。

JS中的

var password = pass.toString(CryptoJS.enc.Utf16); 

在Java中:

byte[] passhash = jsCryptoString.getBytes("UTF-16BE");