الخلاصة

  • ينص RFC 5105 على أن التوقيع الصحيح شرط ضروري، لكنه غير كافٍ، لصحة رمز التحقق. وعلى السجل فحص العنصر الموقّع والخوارزميات والشهادة واعتماد VE والمسجل والرقم والطريقة والتواريخ وسياسة منع الإعادة.
  • يحمل الرمز بياناً عن تحقق سابق. وليس هو قرار السجل، ولا نتيجة EPP، ولا نشر DNS موثوقاً، ولا مشاهدة محلل، ولا اتصالاً ناجحاً.

وصل رمز XML إلى السجل موقّعاً بمفتاح معروف. غير أن اعتماد جهة التحقق التي تملك المفتاح انتهى قبل وصول الطلب. هل يثبت نجاح العملية الحسابية أن الجهة ما زالت مخولة؟

لا. يثبت التوقيع علاقة بين مفتاح ومحتوى مغطى في سياق تشفيري محدد. أما الاعتماد فهو حالة مؤسسية مؤرخة، ويجب أن يسجلها النظام بصورة مستقلة.

صُمم RFC 5105 لنقل نتيجة التحقق في ENUM. يرتبط اسم ENUM برقم E.164، ولذلك لا يكفي أن يتقدم شخص أولاً بطلب الاسم. يجب التحقق من أن المسجل هو صاحب الرقم أو مفوض منه.

يفصل RFC 4725 بين صاحب رقم E.164، ومسجل نطاق ENUM، وجهة التحقق VE، والمسجل Registrar، والسجل Registry، ومشغل DNS، ومقدم التطبيق. تتحقق VE، ويرفع Registrar الطلب، ويقرر Registry ويدير قاعدة التفويض والمنطقة الموثوقة.

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

يتضمن الجزء الإلزامي رقماً تسلسلياً فريداً داخل VE، ورقم E.164، ونهاية اختيارية لكتلة أرقام، ومعرف VE، ومعرف Registrar، ومعرف طريقة التحقق، وتاريخ التنفيذ، وتاريخ انتهاء اختياري. ويمكن إضافة بيانات اتصال اختيارية في جزء منفصل.

نطاق كل حقل مهم. الرقم التسلسلي ليس فريداً عالمياً؛ قد تستخدم جهتان القيمة نفسها. لذلك يلزم ضم هوية VE إلى الرقم، ثم ضم بصمة الرمز والمسجل ونطاق الرقم والطريقة والتواريخ عند اتخاذ القرار. تخزين الرقم وحده يصنع ضماناً لم يقدمه المعيار.

تحدد قيمة E.164 الأولى ونهاية الكتلة، إن وجدت، مجالاً مغلقاً، ويجب أن يكون الرقمان بالطول نفسه. لا يجوز لنظام وسيط توسيع المجال أو حذف بنيته أثناء التطبيع. يحمي التوقيع العبارة كما وُقعت، ولا يحمي تفسيراً جديداً صنعه المستورد.

يستخدم الرمز XML-DSIG بتوقيع enveloped وexclusive canonicalization. تمنع هذه القاعدة مساحات الأسماء الموروثة من حاوية XML الخارجية من تغيير مادة التوقيع. وهي تحل مشكلة تمثيل، لا مشكلة تفويض.

يجب أن يشير Reference URI="#TOKEN" إلى عنصر الرمز الذي يحمل Id="TOKEN". يحذر RFC من أن نقل المعرف إلى tokendata يجعل التوقيع عديم القيمة للغرض المقصود. قد ينجح مدقق عام في التوقيع على بيانات الاتصال فقط، بينما يبقى الرقم والطريقة والتواريخ خارج التغطية.

لهذا لا يكفي نجاح XML-DSIG العام. يجب على Registry التأكد من التحويلات والخوارزميات المقبولة، والإشارة إلى عنصر الرمز الكامل، وأن المفتاح يعود إلى VE معتمدة. يذكر المثال صراحة أن التوقيع الصحيح ضروري لكنه غير كافٍ، ويشير إلى فحص الشهادة وXML Schema أيضاً.

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

يجب أن يحتفظ التدقيق بلقطة trust store وحالة اعتماد VE وقت القرار. قد تبقى مدة X.509 سارية بينما تنتهي العلاقة المؤسسية. وقد يتغير التقييم الحالي لاحقاً من دون أن يتغير ما شاهده النظام في الماضي. لا ينبغي خلط التاريخ بإعادة التقييم.

يربط registrarID الرمز بطرف الطلب. إذا نسخ Registrar ثانٍ رمزاً لم يُغيّر، يبقى التوقيع صحيحاً. لكن مقارنة الطلب بالرمز تكشف أن الطرف مختلف. هنا تصبح سلامة الرمز دليلاً على الرفض، لا دليلاً على القبول.

التواريخ تحتاج سياسة أيضاً. يصف executionDate وقت إجراء التحقق. يصف expirationDate نهاية صلاحيته، وغيابه يعني صلاحية غير محدودة في صيغة البيانات. مع ذلك يجب أن يتحقق Registry من أن الغياب يوافق سياسته، وأن تحدد السياسة مدة استخدام الرمز بعد التنفيذ لتفادي الإعادة.

يمكن أن يكون تاريخ الانتهاء في المستقبل بينما انتهت نافذة التقديم. ويمكن أن يُحذف الانتهاء بينما تمنع السياسة الصلاحية المفتوحة. وقد تتطابق التواريخ ويختلف Registrar. عبارة «غير منتهٍ» ليست قراراً كاملاً.

يعرف methodID طريقة أعلنت VE استخدامها. لكنه لا يثبت تنفيذها ولا قبولها حالياً. يقر RFC 4725 بأن الطرق تتغير بحسب مصادر البيانات والأطراف واختيار صاحب الرقم والتنظيم. على Registry تقييم الطريقة وفق الرقم والنسخة السياسية المعمول بها.

لا ينتهي الأمر بالتحقق الأول. يجب أن يتبع تفويض ENUM حالة رقم E.164. تسمح إعادة تحقق ناجحة باستمراره، بينما يؤدي الفشل إلى التعليق بإجراء صريح أو بانتهاء الصلاحية، وربما بعد مهلة محلية. لا يستطيع رمز نجاح قديم أن يلغي فشلاً أحدث لمجرد أن توقيعه لا يزال قابلاً للحساب.

تحتاج مقاومة الإعادة إلى سجل استعمال. يجب ربط VE والرقم التسلسلي والبصمة وRegistrar والنطاق ووقت الظهور الأول والقرار والنافذة. وبدون ذلك لا يميز النظام بين إعادة إرسال مشروعة ومحاولة مرفوضة سابقاً واستخدام ثانٍ غير مشروع.

بيانات الاتصال الاختيارية ليست بديلاً عن جوهر التحقق. قد تساعد في جولة لاحقة، لكنها لا تثبت تخصيص الرقم الآن. كما أن محتوى الرمز غير مشفر. إذا تطلبت السياسة السرية، فيجب توفير آلية أخرى. التوقيع والسرية والتفويض خصائص مختلفة.

للخوارزميات زمنها. طلب RFC دعم RSA-SHA1 وRSA-SHA256، مع تسجيل القلق من SHA-1 آنذاك، وترك القبول الفعلي للسجل. قدرة مكتبة على التحقق من خوارزمية تاريخية لا تلزم Registry بقبولها في طلب جديد.

بعد قبول الرمز تبدأ طبقات أخرى. يحدد RFC 5076 امتداد EPP لإضافة معلومات التحقق أو تغييرها أو حذفها أو استرجاعها. تثبت استجابة EPP الناجحة معاملة البروتوكول، لا نشر المنطقة الموثوقة.

قد تُحفظ قاعدة Registry ويفشل توليد المنطقة. وقد تُنشر المنطقة وتبقى ذاكرة محلل قديمة. يصف RFC 3761 بحث ENUM وصولاً إلى URI، لكن ظهور URI لا يثبت صحته أو إمكانية الوصول إلى وجهته أو اكتمال الاتصال.

لذلك يلزم تسلسل إيصالات. يسجل الإيصال التشفيري البايتات الأصلية والبصمة والمحلل وSchema والمعرف والعنصر المرجعي والتحويلات والمدخل canonicalized والخوارزميات ومسار الشهادة وجذور الثقة والنتيجة. ولا يقول إن التفويض اعتمد.

يسجل إيصال السياسة اعتماد VE والطريقة وتطابق Registrar ونطاق E.164 والتواريخ والنافذة ونسخة السياسة وتاريخ الإعادة. يصدر Registry قراراً مستقلاً. ثم تصدر EPP وقاعدة التفويض والنشر الموثوق والمحلل والتطبيق نتائجها كل على حدة.

بهذا يمكن تحديد العطل: عنصر XML خاطئ، أو VE غير معتمدة، أو Registrar مختلف، أو طريقة قديمة، أو إعادة رمز، أو فشل EPP، أو تأخر DNS، أو تعذر التطبيق. أما حالة واحدة باسم «تم التحقق» فتمحو السبب وتمنح نظاماً واحداً سلطة لم تكن له.

يتوافق ذلك مع طبقات الواقع لدى Heng Lu. التوقيع حقيقة قوية في طبقة التمثيل والمصدر ما دام لا يتحدث باسم السياسة أو التشغيل. أولوية الكود العامل تعني أن يثبت كل مكون انتقاله، لا أن يرث الضوء الأخضر من مكون سابق.

المصادر