node.js 加密模块的问题

Problems with node.js crypto module

我正在尝试创建一个 HMAC 以用于 API 的身份验证。

但是,我运行正在解决标准节点加密的一些问题。

查看身份验证部分下的 example

HMAC_SHA256 ( 13916834993JJHlXeDcFM , 230664ae53cbe5a07c6c389910540729 )

散列这两个值应该得到一个 return 值:cdbf5cc64c70e1485fcf976cdf367960c2b28cfc28080973ce677cebb6db9681

但是,当我使用加密库时,我似乎无法复制它:

crypto.createHash('sha256').update('13916834993JJHlXeDcFM').update('230664ae53cbe5a07c6c389910540729').digest("hex") 

returns

798134a33b4f8af61c85c07b692f907607b03a7b7298faff1f05ec6712006f9c

crypto.createHmac("sha256", '13916834993JJHlXeDcFM').update('230664ae53cbe5a07c6c389910540729').digest('hex');

returns

3a67e4899e1eae579b3191fdde04a19086cf50f71ee497274e23e413b52a0d00

此外,两者不同的事实也是一个问题。出于某种原因,createHmac(algorithm, key) 方法对我不起作用。

crypto.createHmac("sha256", '13916834993JJHlXeDcFM').digest('hex');

应该return

1edcb16556338085d86656163314ded51d90f297d9c1a67d87d5b00b9fc44eb5

但 return 改为:

01440fc92c9f2e4923b98cbe0202359b6d2a88ec8b5d54d1690718112f671084

我正在尝试使用与上面列出的 API 相关的库来调试我在身份验证中收到的错误,但似乎 运行 出现了一些加密错误阻止我完成很多有用调查的库。

在 API 示例中,MD5 ( secret ) 是键,nonce + client + key 是您的数据。所以正确的语法是:

crypto.createHmac("sha256", '230664ae53cbe5a07c6c389910540729').update('13916834993JJHlXeDcFM').digest('hex');

输出:

cdbf5cc64c70e1485fcf976cdf367960c2b28cfc28080973ce677cebb6db9681