توليد التوقيع

من Arabic Ikoula Wiki
مراجعة ١٤:١٣، ١٩ أكتوبر ٢٠١٥ بواسطة Ikbot (نقاش | مساهمات) (أنشأ الصفحة ب'<br /> هام: تمت ترجمة هذه المقال باستخدام برامج للترجمة الآلية :fr:Génération de la signature|أنقر على الرا...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
Jump to navigation Jump to search


هام: تمت ترجمة هذه المقال باستخدام برامج للترجمة الآلية أنقر على الرابط لية أنقر على الرابط






مقدمة

أثناء استدعاء API، كما هو موضح في صفحة WIKI للمصادقة، مطلوب توقيع. أنها ولدت تستند كافة المعلمات المقدمة أثناء المكالمة .
لأسباب فنية، وإعدادات المصادقة يجب في الوقت الحاضر دائماً يتم إرسالها عبر أسلوب 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



هذه المادة يبدو لك أن تكون مفيدة ?

0



ليس مسموح لك بأن تنشر تعليقا.