lizhaoyao

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

<?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加密

然后签名比对一下即可

分类:

技术点:

相关文章: