随手写个签名验证

随手写个签名验证 之前的项目好像写过类似的,不过很久了,忘记是不是这样的了,类似于微信的那种签名

复制代码
<?php
$data=$_GET;
var_dump(auth_my_sign($data));
function auth_my_sign($data)
{
    $sign=isset($data['sign'])?$data['sign']:"";
    $string=create_my_sign($data);
    return $string===$sign;
}

function create_my_sign($data)
{
    unset($data['sign']);
    ksort($data);
    $string="";
    foreach ($data as $key => $value)
    {
        $string.="$key=$value&";
    }
    $string=trim($string,"&");
    $string=sha1($string);
    return $string;
}
?>
复制代码

代码效果如下

三个步骤

1.拿出sign 去掉sign参与排序

2.键值排序,参数规则拼接

3.去掉两边& 进行sha1加密

然后签名比对一下即可

posted @   李照耀  阅读(242)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
历史上的今天:
2015-08-28 thinkphp中使用PHPEXCEL导出数据
2015-08-28 thinkphp中使用PHPEXCEL导入数据
点击右上角即可分享
微信分享提示