如何使用JavaScript和sha512算法对字符串进行哈希处理

时间:2019-04-30 17:48:37

标签: javascript node.js mean-stack server-side

我尝试从NPM使用sha512,但它会继续散列错误的内容,即我应该获取字符串,但它会一直返回对象。 因此,在PHP中,我知道我可以执行任务$hash = hash("sha512","my string for hashing");

如何在Node.js JavaScript上执行此任务

1 个答案:

答案 0 :(得分:1)

如果您正在使用Node:

> crypto.createHash('sha256').update('my string for hashing').digest('hex');
'3826503473858f545663db472ae7d95281cd57dfd228cf2dd34d5ba64c444c81'

如果要使用浏览器Web Crypto API:

function sha256(str) {
  return crypto.subtle.digest("SHA-256", new TextEncoder("utf-8").encode(str)).then(buf => {
    return Array.prototype.map.call(new Uint8Array(buf), x=>(('00'+x.toString(16)).slice(-2))).join('');
  });
}

sha256("my string for hashing").then(x => console.log(x));
// prints: 3826503473858f545663db472ae7d95281cd57dfd228cf2dd34d5ba64c444c81