PHP哈希签名方式sha1和sha256用于API对接签名验证

sha1 (长度40字节)


$str = '203fpid';

sha1 = sha1(str);

echo $sha1.'<br>';

php sha256加密 (长度64)


$str = '203fpidf02lvj!!@#!';

sha256 = hash('sha256',str);

echo $sha256.'<br>';

/** 生成签名(哈希sha256 64位)

* @param $data

* @return false|string

*/

public function _sign($data){

data = array_filter(data);

ksort($data);

$temps = \[\];

foreach (data as key => $value) {

temps\[\] = sprintf('%s=%s', key, $value);

}

signBefore = this->app_secret.implode('&', $temps);

return hash('sha256',$signBefore);

}

相关推荐
大可不必了9 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus9 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道10 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛10 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
火云代理10 小时前
更换网络后为什么会退出登录?分清 IP、Cookie 与会话的关系
服务器·网络·网络协议·tcp/ip·php·ip
eggwyw12 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
火云代理14 小时前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
another heaven16 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++
SomeOtherTime17 小时前
Rust 闭包语法和原理(AI回答)
开发语言·后端·rust
apcipot_rain18 小时前
C++转Java日记(10)
java·开发语言