Generația semnături: Diferență între versiuni

De la Ro Ikoula wiki
Jump to navigation Jump to search
Linia 1: Linia 1:
 +
<span data-link_translate_de_title="Die Signatur-generation"  data-link_translate_de_url="Die+Signatur-generation"></span>[[:de:Die Signatur-generation]][[de:Die Signatur-generation]]
 
<span data-link_translate_nl_title="De handtekening generatie"  data-link_translate_nl_url="De+handtekening+generatie"></span>[[:nl:De handtekening generatie]][[nl:De handtekening generatie]]
 
<span data-link_translate_nl_title="De handtekening generatie"  data-link_translate_nl_url="De+handtekening+generatie"></span>[[:nl:De handtekening generatie]][[nl:De handtekening generatie]]
 
<span data-link_translate_it_title="La generazione della firma"  data-link_translate_it_url="La+generazione+della+firma"></span>[[:it:La generazione della firma]][[it:La generazione della firma]]
 
<span data-link_translate_it_title="La generazione della firma"  data-link_translate_it_url="La+generazione+della+firma"></span>[[:it:La generazione della firma]][[it:La generazione della firma]]

Versiunea de la data 29 octombrie 2015 18:31

de:Die Signatur-generation nl:De handtekening generatie it:La generazione della firma pt:A geração de assinatura es:La generación de una firma en:The signature generation ru:Создание подписи pl:Generowanie podpisu fr:Génération de la signature

Acest articol este rezultatul unei traduceri automate efectuate de către software-ul. Puteți vizualiza sursa articol aici.







Introducerea

În timpul unui apel la API, aşa cum este descris în wiki-ul de autentificare, o semnătură este necesar. Este generat pe baza tuturor parametrilor furnizate în timpul convorbirii .
Din motive tehnice, setările de autentificare trebuie pentru moment întotdeauna a fi transmise prin metoda HTTP obţine

Exemplu

// Définition des paramètres
$data["login"] = "mail@example.com";
$data["parola "] = "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

Concluzia

Odată ce semnătura este generat, este necesar să treacă ca parametru (În plus faţă de toţi ceilalţi parametri ) apel API.
În urma exemplul anterior, ar fi fost, prin urmare, pentru a trece parametrii :

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



Acest articol părea să fie util ?

0



Nu sunteți autorizat să publicați comentarii.