PHP Curl HMAC-SHA1

Нужна помощь в этом …. Мне нужно получить данные json из вызова API из URL. Он сказал, что нужно позвонить ..

  1. Content-Type: application / x-www-form-urlencoded
  2. HTTP HEADERS: ключ —> APIKEY
  3. HTTP HEADERS: sig —> подпись HMAC-SHA1 данных POST с SECRET KEY
  4. ПАРАМЕТР ПОСЛЕ: отметка времени —-> Текущая временная метка Unix

Я делаю это правильно? Но как реализовать пункт 3 выше ???

$key = 'APIKEY'; $secret = 'APISECRET'; $signature = ''; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://www.domain.com/getticker"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HEADER, FALSE); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, "timestamp=".time()); curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded","key: ".$key,"sig: ".$signature)); $response = curl_exec($ch); curl_close($ch); echo $response; 

Я почесал голову над этим. пожалуйста, помогите мне этот новичок на PHP.

    Наконец, я понял … см. Часть подписи $.

     $key = 'APIKEY'; $secret = 'APISECRET'; $timestamp = time(); $signature = hash_hmac('sha1', "timestamp=".$timestamp, $secret); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://www.domain.com/getticker"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HEADER, FALSE); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, "timestamp=".time()); curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded","key: ".$key,"sig: ".$signature)); $response = curl_exec($ch); curl_close($ch); echo $response;