/** * Get Signatur (Base64, RFC 4648) * * @param array $parameters * * @return string */ private function getSignature($parameters) { /** * Sorting */ ksort($parameters); /** * Build Query */ $parametersQuery = http_build_query($parameters); $parametersQuery = utf8_encode(str_replace('%3A', ':', $parametersQuery)); $apiKey = base64_decode($this->config['server']['client_secret']); return EncodingUtil::getRfc4648(base64_encode(hash_hmac('sha1', $parametersQuery, $apiKey, true))); }
/** * @param mixed $signature * * @return ResponseModel */ public function setSignature($signature) { $this->signature = EncodingUtil::getRfc4648(trim($signature)); return $this; }