Создание подписи: различия между версиями
Ikbot (обсуждение | вклад) |
Ikbot (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | <span data-link_translate_ru_title="Создание подписи" data-link_translate_ru_url="Создание подписи"></span>[[:ru:Создание подписи]][[ru:Создание подписи]] | ||
<span data-link_translate_he_title="הדור חתימה" data-link_translate_he_url="%D7%94%D7%93%D7%95%D7%A8+%D7%97%D7%AA%D7%99%D7%9E%D7%94"></span>[[:he:הדור חתימה]][[he:הדור חתימה]] | <span data-link_translate_he_title="הדור חתימה" data-link_translate_he_url="%D7%94%D7%93%D7%95%D7%A8+%D7%97%D7%AA%D7%99%D7%9E%D7%94"></span>[[:he:הדור חתימה]][[he:הדור חתימה]] | ||
<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_de_title="Die Signatur-generation" data-link_translate_de_url="Die+Signatur-generation"></span>[[:de:Die Signatur-generation]][[de:Die Signatur-generation]] |
Текущая версия на 18:41, 9 февраля 2017
ru:Создание подписи
he:הדור חתימה
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
ja:署名の生成
ar:توليد التوقيع
zh:签名生成
ro:Generația semnături
pl:Generowanie podpisu
fr:Génération de la signature
Эта статья является результатом автоматического перевода, выполняемого программного обеспечения. Вы можете посмотреть исходный статьи здесь.
Введение
Во время вызова API как описано в вики аутентификации, подпись не требуется. Он генерируется все параметры, заданные во время вызова на основании .
По техническим причинам, параметры проверки подлинности должны на данный момент всегда быть переданы через метод HTTP GET
Пример
// Définition des paramètres
$data["login"] = "mail@example.com";
$data["пароль "] = "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
Вывод
После того, как создается подпись, это нужно передать его как параметр (Помимо всех остальных параметров ) вызов API.
После предыдущего примера, параметры, передаваемые таким образом были бы :
- login = "mail@example.com"
- password = "dh4=674j_G"
- signature = $signature
Эта статья представляется вам быть полезным ?
Включить автоматическое обновление комментариев