来自 nodejs 加密的 SHA256 不正确

Incorrect SHA256 from nodejs crypto

const crypto = require('crypto');

hm = crypto.createHmac("sha256","Some String");
console.log(hm.digest("base64"));

运行 这给了我:

Nd6Q8epsIBG+c/jN6TdnfRNbFWCcB7bI0DYkfyDqf+8=

(repl)

但是在 https://approsto.com/sha-generator/ 处计算 sha256 得到:

fw/WRlO6C7Glec7Str83XpFsxgZiEJ7gwLJPCnUMOmw

为什么会有差异?

使用Hash instead of Hmac.

const crypto = require('crypto');

hash = crypto.createHash("sha256");
hash.update("Some String");
console.log(hash.digest("base64"));

结果:

fw/WRlO6C7Glec7Str83XpFsxgZiEJ7gwLJPCnUMOmw=

另请参阅: