微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

需要与此特定实现的 crypto.createHmac 方法等效的浏览器

如何解决需要与此特定实现的 crypto.createHmac 方法等效的浏览器

所以,我有一段用 Node.js 编写的代码

crypto.createHmac('sha256',secret).update(orderedParams).digest('hex')

我希望在浏览器中引入这段代码,但这不起作用,因为浏览器不支持“crypto”库。有人可以帮我在浏览器中重新创建相同的方法吗?

解决方法

大多数加密库都可以确定 HMAC,例如CryptoJSWebCrypto API

以下示例使用 CryptoJS:

var secret = 'my secret';
var orderedParams = 'the ordered params';

// Short
var hmac3 = CryptoJS.HmacSHA256(orderedParams,secret).toString();
console.log(hmac3.replace(/(.{48})/g,'$1\n'));

// Progressive
var hmac2 = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256,secret).update(orderedParams).finalize().toString();
console.log(hmac2.replace(/(.{48})/g,'$1\n'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/crypto-js.min.js"></script>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。