示例#1
0
 protected function checkSign($service, $appKey = null)
 {
     $dt = $this->_request->get('dt');
     $sign = $this->_request->get('sign');
     if ($appKey === null) {
         $arr = \Sooh\Base\Rpc\Broker::getRpcIni($service);
         $appKey = $arr['key'];
     }
     if (\Sooh\Base\Ini::getInstance()->get('released')) {
         $dur = abs($dt - time());
         if ($dur > 60) {
             $this->error('sign error');
             return false;
         }
         if ($sign != md5($dt . $appKey)) {
             $this->error('sign error');
             return false;
         }
     } else {
         if (empty($sign)) {
             error_log('trace:sign of serviceCtrl skipped');
         } elseif ($sign != md5($dt . $appKey)) {
             $this->error('sign error');
             return false;
         }
     }
     return true;
 }