当前位置:首页 > 技术记录 > 正文内容

PHP hash_hmac sha256 遇到的坑 解决PHP与JAVA sha256结果不一致

ogfogf4年前 (2021-11-30)技术记录28257


$str = "POST\n/api/tenants/5950/rest/channels/20/messages\n1489490514142\n705bfbd388d2bf852813fc90e655b5ed";

$key = '02a0693ba5a57560df1f26a991204cb0';

$sig = hash_hmac("sha256", $str, $key, true);

echo $sig = base64_encode($sig);


===

    $sign = md5(hash_hmac('sha1', base64_encode(http_build_query($data_max)), $data_max['appKey'] .$appscret , true));      


==============

hash(string $algo, string $data, bool $raw_output = false): string

  • algo

  • 要使用的哈希算法,例如:"md5","sha256","haval160,4" 等。 在 hash_algos() 中查看支持的算法。

  • data

  • 要进行哈希运算的消息。

  • raw_output

  • 设置为 true 输出原始二进制数据, 设置为 false 输出小写 16 进制字符串。

返回值

如果 raw_output 设置为 true, 则返回原始二进制数据表示的信息摘要, 否则返回 16 进制小写字符串格式表示的信息摘要。


echo hash("sha256",$str);


5a31dec12095f65f21e47d7265633a69902015e8e7193796eae014601e331ec6

扫描二维码推送至手机访问。

版权声明:本文由技术建站文档发布,如需转载请注明出处。

分享给朋友:

相关文章

autojs 入门及安装

autojs 入门及安装

下载Visual Studio Code https://pc.qq.com/detail/16/detail_22856.htmlAuto.js是什么#安卓脚本框架可以做的事情#数据监控:...

A股各细分行业龙头

锂电池各类细分1.电池:宁德时代、比亚迪、亿纬锂能、国轩高科、鹏辉能源、川能动力、欣旺达。2.正极材料:a.三元正极:容百科技、当升科技、杉杉能源(杉杉股份 )、格林美、中伟股份、厦钨新能(厦门钨业...

如何判断页面是通过返回按钮进入

window.addEventListener('pageshow', function (event) {        if(event.p...

linux下mysql忘记密码怎么办

前言今天在服务器安装mysql之后,登录发现密码错误,但是我没有设置密码呀,最后百度之后得知,mysql在5.7版本之后会自动创建一个初始密码。报错如下:[root@mytestlnx02 ...

PHP 正则匹配所有内容

<html>(.*)</html>  这样根本不行,因为源代码里面有换行ch(13),还有一些 tab键,应该这样: preg_match(...

ajax实现跨域访问

ajax实现跨域访问

ajax跨域访问是一个老生畅谈的问题啦,网上解决方法很多,discuz用的p3p协议,有兴趣的朋友可以了解下,比较常用的是JSONP方法,貌似目前这种方法只支持GET方式,不如POST方式安全。即使使...