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);

}

相关推荐
presenttttt29 分钟前
用Python和OpenCV从零搭建一个完整的双目视觉系统(四)
开发语言·python·opencv·计算机视觉
每日出拳老爷子35 分钟前
[C#] 使用TextBox换行失败的原因与解决方案:换用RichTextBox的实战经验
开发语言·c#
半桔38 分钟前
【Linux手册】从接口到管理:Linux文件系统的核心操作指南
android·java·linux·开发语言·面试·系统架构
nightunderblackcat1 小时前
新手向:实现ATM模拟系统
java·开发语言·spring boot·spring cloud·tomcat·maven·intellij-idea
开开心心就好1 小时前
电脑息屏工具,一键黑屏超方便
开发语言·javascript·电脑·scala·erlang·perl
笑衬人心。1 小时前
Java 17 新特性笔记
java·开发语言·笔记
序属秋秋秋2 小时前
《C++初阶之内存管理》【内存分布 + operator new/delete + 定位new】
开发语言·c++·笔记·学习
ruan1145143 小时前
MySQL4种隔离级别
java·开发语言·mysql
quant_19864 小时前
R语言如何接入实时行情接口
开发语言·经验分享·笔记·python·websocket·金融·r语言
百锦再8 小时前
详细解析 .NET 依赖注入的三种生命周期模式
java·开发语言·.net·di·注入·模式·依赖