function buildRequestPara($para_temp) { $para_filter = Alipay::paraFilter($para_temp); $para_sort = Alipay::argSort($para_filter); $mysign = $this->buildRequestMysign($para_sort); $para_sort['sign'] = $mysign; if ($para_sort['service'] != 'alipay.wap.trade.create.direct' && $para_sort['service'] != 'alipay.wap.auth.authAndExecute') { $para_sort['sign_type'] = strtoupper(trim($this->alipay_config['sign_type'])); } return $para_sort; }
function getSignVeryfy($para_temp, $sign, $isSort) { $para = Alipay::paraFilter($para_temp); if ($isSort) { $para = Alipay::argSort($para); } else { $para = $this->sortNotifyPara($para); } $prestr = Alipay::createLinkstring($para); $isSgin = false; switch (strtoupper(trim($this->alipay_config['sign_type']))) { case "MD5": $isSgin = Alipay::md5Verify($prestr, $sign, $this->alipay_config['key']); break; case "RSA": $isSgin = Alipay::md5Verify($prestr, trim($this->alipay_config['ali_public_key_path']), $sign); break; case "0001": $isSgin = Alipay::md5Verify($prestr, trim($this->alipay_config['ali_public_key_path']), $sign); break; default: $isSgin = false; } return $isSgin; }