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

}

相关推荐
сокол1 分钟前
【Python-基础-环境搭建】Ubuntu Python 开发环境搭建:编译、pipenv、pyenv、远程连接
开发语言·python·ubuntu
liangshanbo12152 小时前
JavaScript 面试题:Object.keys() 的返回顺序是无序的吗?
开发语言·javascript·ecmascript
朝朝辞暮i8 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
小师兄吃牛肉9 小时前
C语言篇:宏
c语言·开发语言
郑同学的笔记9 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
言乐610 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
weixin_3077791310 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
kakakahahahaha10 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i10 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
朝朝辞暮i10 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法