Generowanie podpisu

Z Pl Ikoula wiki
Wersja z dnia 17:03, 22 paź 2015 autorstwa Ikbot (dyskusja | edycje) (Utworzono nową stronę "<br /> Artykuł ten jest wynikiem translacji automatycznej wykonywane przez oprogramowanie. Możesz przeglądać źródła artykułu :fr:Génération de la signature|...")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacji Przejdź do wyszukiwania


Artykuł ten jest wynikiem translacji automatycznej wykonywane przez oprogramowanie. Możesz przeglądać źródła artykułu tutaj.







Wprowadzenie

Podczas wywołania funkcji API zgodnie z opisem w WIKI uwierzytelnianie, podpis jest wymagany. Jest on generowany na podstawie wszystkich parametrów dostarczonych w trakcie rozmowy .
Ze względów technicznych, ustawienia uwierzytelniania musi w tej chwili zawsze być przekazywane za pośrednictwem metody HTTP GET

Przykład

// Définition des paramètres
$data["login"] = "mail@example.com";
$data["hasła "] = "DH 4=674j_G "; // Mot de passe non chiffré
// D"autres paramètres peuvent êtres ajoutés en fonction de l"appel à l"API
// $data["autre_parametre"] = "valeur";
// $data["autre_parametre_2"] = "valeur_2";
// $data["..."] = "...";
 
// Triage des paramètres dans l'ordre croissant
ksort($data);
 
// Encodage des paramètres
$query = http_build_query($data);
 
// Encodage des signes plus
$query = str_replace("+", "%20", $query);
 
// Transformation de la chaîne de caractères en minuscule
$query = strtolower($query);
 
// Clé publique d'Ikoula (cf. lien ci-dessus)
$public_key="MIIBIjAN...";
 
// Hashage des paramètres
$hash = hash_hmac("SHA1", $query, $public_key, true);
 
// Encodage en base64, puis encodage en URL selon RFC 3986
$signature = rawurlencode(base64_encode($hash));
 
// ==> $signature contient alors la signature finale

Zawarcia

Podpis jest wygenerowany, jest niezbędne by przekazać ją jako parametr (Oprócz wszystkich innych parametrów ) Wywołanie API.
Po poprzednim przykładzie, zatem byłby parametry :

  • login = "mail@example.com"
  • password = "dh4=674j_G"
  • signature = $signature



W tym artykule wydawało ci się przyda ?

0



Nie możesz publikować komentarzy.