BroadNet
البروتوكولات إجابة BroadNet

HMAC-SHA256 لتوقيع DLR webhook - كيف ولماذا

آخر مراجعة 1 دقائق قراءةتمت المراجعة من قبل قسم الهندسة BroadNet
إجابة سريعة

يُعدّ HMAC-SHA256 أداة التشفير الأساسية التي تستخدمها جميع منصات المراسلة الحديثة لتوقيع إشعارات استلام الرسائل ورسائل الويب الواردة. تقوم المنصة بحساب قيمة تجزئة مُشفّرة لمحتوى الطلب باستخدام سرّ مشترك؛ ثم يُعيد جهازك حساب نفس قيمة التجزئة ويقارنها. يُثبت هذا أن إشعار الويب صادر من المنصة - وليس من شخصٍ خمن عنوان URL الخاص بك - وأن محتوى الطلب لم يُعبث به أثناء النقل.

تعريف بلغة بسيطةمحايد تجاه البائعتمت المراجعة 24 سبتمبر 2026
الإجابة المطولة

كل ما يستحق المعرفة، ولا شيء مما لا يستحقها.

§01

كيفية إنشاء التوقيع

تعتمد طريقة شائعة على بناء السلسلة المرجعية على الشكل `${timestamp}.${requestBody}`، ثم حساب `HMAC-SHA256(canonical, secret)`، وترميز الناتج بالنظام الست عشري، وإرسال الملخص مع الطابع الزمني في ترويسة توقيع. يمنع تضمين الطابع الزمني داخل الحمولة الموقّعة هجمات إعادة الإرسال — وينبغي أن ترفض نقطة النهاية لديك أي webhook يزيد عمره على 5 دقائق. تختلف أسماء الترويسات والصيغة المرجعية الدقيقة من منصة إلى أخرى، لذا تحقّق منها لدى مزوّدك قبل كتابة شيفرة التحقق.

§02

لماذا استخدام HMAC وليس توقيعات RSA

تتميز خوارزمية HMAC بالتناظر - حيث يتشارك الطرفان سرًا واحدًا - مما يعني أن التوقيع والتحقق أسرع بنحو 10000 مرة من خوارزمية RSA-2048. في حالة انتشار روابط الويب، حيث قد يُصدر مركز خدمة الرسائل القصيرة (SMSC) الواحد 50000 طلب DLR في الثانية، يستهلك توقيع RSA معظم موارد المعالج. أما خوارزمية HMAC-SHA256 على الأجهزة الحديثة فتستغرق بضعة ميكروثوانٍ فقط. في المقابل، يستطيع أي شخص يملك السر أن يوقّع، لذا يجب ألا يُشارك السر إلا بين المنصة وبيئتك، وأن يُخزَّن كأي بيانات اعتماد أخرى، وأن يكون قابلًا للتدوير عند الطلب.

§03

مشاكل التحقق

ثلاثة أخطاء شائعة. مقارنة السلاسل النصية باستخدام `==` بدلاً من مقارنة ثابتة الوقت (هجوم التوقيت - استخدم `crypto.timingSafeEqual`). التحقق من صحة التوقيع بعد تحليل محتوى JSON (يجب التحقق من البايتات الخام، وليس من تمثيل مُعاد تسلسله - إعادة ترتيب JSON تُفسد التجزئة). نسيان نافذة منع إعادة الإرسال للطابع الزمني.

§04

ما وراء HMAC

في البيئات الخاضعة للتنظيم (البنوك والرعاية الصحية)، تدعم بعض المنصات أيضًا تسليم webhooks عبر mTLS — إذ يقدّم المُرسِل شهادة عميل يتحقق منها موازن الأحمال لديك قبل أن يصل الطلب إلى التطبيق. هذا أقوى من HMAC لأنه يربط التسليم بمفتاح عتادي، لكنه لا يبرر تكلفته إلا لأعباء العمل الحساسة فعلًا. بالنسبة لمعظم عمليات التكامل، يبقى HMAC-SHA256 عبر HTTPS هو الخيار الصحيح.

BNكتبه فريق الهندسة BroadNet·تشغيل خدمات الرسائل عالية الجودة منذ عام 2003، والمقر الرئيسي في دبي·المعايير التحريرية
ابدأ باستخدام هذا

هل تحتاج إلى مساعدة في توصيل هذا الجهاز؟

الصفحات التالية تعرض المنتجات وأدلة التكامل التي تُجسّد هذا المفهوم عمليًا. إذا كنت تُفضّل شرحًا عمليًا، فإن فريقنا الهندسي يُجيب على المكالمات في نفس اليوم خلال ساعات العمل MENA .

تحدث إلى فريقنا الهندسي
تعليق

هل كانت هذه الإجابة مفيدة؟

يساعدنا تصويتك في تحديد أولويات الإجابات التي يجب توسيعها بأمثلة ورسوم بيانية ومقتطفات من التعليمات البرمجية.

هل كانت هذه الإجابة مفيدة؟
شكراً، تمّت الملاحظة. سنحتفظ بهذه الإجابة.
فهمت. أخبرنا ما هو المفقود — أرسل ملاحظة سريعة.

كيف نكتب المحتوى ونراجعه

هل ما زلت بحاجة إلى مساعدة؟

تحدث إلى مهندس حقيقي حول تصميمك.

نرد خلال يوم عمل واحد، وتحظى حسابات الإنتاج بدعم على مدار الساعة طوال أيام الأسبوع. مهندسو الحلول لدينا يقدمون برمجيات جاهزة، وليس مجرد برامج نصية.

$ curl -X POST https://api.broadnet.me/sms/sendSms
اتفاقية مستوى الاستجابة (SLA)
طلبات الوصول التجريبيالرد خلال يوم عمل واحد
بيئة الإنتاج24 / 7 · < 15 min
مركز NOC للمشغّلينعلى مدار الساعة · استدعاء المناوب