javascript - 将哈希 HMAC SHA256 的 JS 加密代码移植到 PHP

标签 javascript php hash

我想移植以下 JS 代码:

crypto.createHmac('sha256', secret)
  .update(s)
  .digest('base64');

到 PHP。我该怎么做?

我得到的最接近的是:

hash_hmac('sha256', $s, $secret)

base64_encode(hash_hmac('sha256', $s, $secret));

但是两者都返回与 JS 版本相同的结果。

如何将 JS 移植到 PHP

最佳答案

设法回答我自己的问题:

base64_encode(hash_hmac('sha256', $s, $secret, true));

最后一个参数是raw_output,根据docs :

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

欢迎更好的解决方案。

关于javascript - 将哈希 HMAC SHA256 的 JS 加密代码移植到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53842556/

相关文章:

java - 如何在 Java 中深度复制哈希器

javascript - .height() 以百分比返回高度,如何以像素为单位获取它

javascript - Express.js - 将路由导入子路由

php - 使用mysqli时如何不显示重复错误

javascript - 如何获取此动态表中最后两列的列总和

php - 设置实体子实体而不从存储库加载

php - PHP 中的双向加密来混淆 ID?

android - Android 的 Facebook 发布 key 哈希不起作用

javascript - angular2在html中输出对象值而不指定对象名称

javascript - 如何将 json 字符串传递给 webmethod c# ASP.NET