php 生成签名

来源:互联网 发布:倭寇的踪迹 知乎 编辑:程序博客网 时间:2024/04/27 17:57


  1. 将所有业务请求参数按字母先后顺序排序
  2. 参数名称和参数值链接成一个字符串A
  3. 在字符串A的首尾加上appsecret组成一个新字符串B
  4. 对字符串进行sha1加密并转化为大写得到签名sign
     

假设请求的参数为:f=1,b=23,k=33,排序后为b=23,f=1,k=33,参数名和参数值链接后为b23f1k33,首尾加上appsecret后sha1:sha1(secretkey1value1key2value2…secret)。 

/** * 签名 * @param $appSecret * @param $params * @return string */public function sign($appSecret, $params){    if (!is_array($params))        $params = array();    ksort($params);    $text = '';    foreach ($params as $k => $v) {        $text .= $k . $v;    }    return strtoupper(sha1($appSecret . $text . $appSecret));}
0 0