الخلاصة

  • توضح draft-ietf-tcpm-tcp-ao-algs-08 المؤرخة في 1 أكتوبر أن KMAC256-KDF يتبع صيغة KMAC# في NIST SP 800-56C Revision 2، ولا يكفي وصفه باسم KMAC256 العام الوارد في SP 800-185.
  • ينبغي أن يربط اختبار القبول بين نسخة المسودة والوسائط العامة والترميزات وسياق الاتصال ونتيجة المتجه المعروف وبايتات خيار TCP-AO ونتيجة التحقق لدى الطرف الآخر.

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

المراجعة 08 من مسودة مجموعة TCPM تجعل هذا النقص صريحاً. فهي تقول إن KMAC256 ووسائطه عُرّفت أصلاً في NIST SP 800-185، بينما تعرف SP 800-56C Revision 2 صيغة تسمى KMAC# ولها مجموعة وسائط مختلفة. وتحدد المسودة أن KMAC256-KDF يطابق تلك الصيغة. كما تضيف أن العدد الثابت 1، المشفر كعدد 32 بت بترتيب بايتات الشبكة، يدل على نسخة KDF.

يجب إبقاء حالة الوثيقة منفصلة عن مضمونها التقني. إنها Internet-Draft نشطة مقصود بها Standards Track، وليست RFC. تضع مجموعة TCPM نوفمبر 2026 هدفاً لإرسالها إلى IESG، لكن الهدف ليس إرسالاً أو اعتماداً. كما أن سجل IANA المحفوظ أثناء البحث لا يزال يعرض SHA1 وAES128؛ الإضافتان الجديدتان طلب في المسودة وليستا دليلاً على التسجيل.

عقد اشتقاق المفتاح محدد بدقة. قيمة salt هي 132 بايتاً صفرياً. العداد هو 1 في 32 بت وبترتيب الشبكة. تمثل Z الـMaster Key، وتمثل FixedInfo سياق اتصال TCP-AO، ويبلغ الخرج 256 بت، وسلسلة التخصيص هي بايتات ASCII لكلمة KDF. ولأن طول Traffic Key المطلوب يساوي طول الخرج، تكفي عملية واحدة.

بعد ذلك يبدأ عقد ثانٍ للـMAC. تستخدم KMAC256-128 مفتاح Traffic Key البالغ 256 بت والرسالة المشكلة وفق TCP-AO، لكن سلسلة التخصيص هنا فارغة، ويطلب خرج بطول 128 بت مباشرة. تجعل نتيجة 16 بايت خيار TCP-AO الكامل يشغل 20 بايتاً من مساحة خيارات TCP البالغة 40 بايتاً. لا يجوز نقل KDF من مرحلة الاشتقاق إلى مرحلة المصادقة.

سياق FixedInfo جزء من الحساب لا وصف جانبي له. تجمع RFC 5925 عنواني المصدر والوجهة والمنفذين ورقمي التسلسل الابتدائيين. المفاتيح اتجاهية. في SYN بلا ACK، يوضع الصفر مكان رقم الوجهة غير المعروف؛ وبعد ذلك تستخدم القيمتان المعروفتان. اختلاف اتجاه الحقول يكفي لإنتاج مفتاح مختلف حتى لو تطابقت Master Key.

ولا يحمل السلك وصف الإعداد كاملاً. يتضمن خيار TCP-AO حقول Kind وLength وKeyID وRNextKeyID وMAC، لكنه لا يعلن اسم الخوارزمية. الربط بين KeyID والخوارزمية والمفتاح موجود في Master Key Tuple المعد خارج الحزمة. لذلك لا يثبت تطابق KeyID أن الطرفين أعطياه المعنى المحلي نفسه.

تقترح BTW إيصالاً لمثيل الخوارزمية. يسجل نسخة المسودة ومعرفي KDF وMAC ونسخ وثائق NIST والقيم العامة وترميزها ومعرفاً غير سري لـMKT واسم المنتج ونسخة البناء. ثم يضيف تجزئة خرج متجه معروف، وبايتات الخيار الملتقطة، ونتيجة تحقق الطرف الآخر، وحالة TCP، ونتيجة البروتوكول الأعلى.

لا مكان للـMaster Key أو Traffic Key الإنتاجية في هذا الإيصال. قابلية التدقيق لا تبرر تسريب السر. تكفي هوية إعداد محكومة ومتجهات اختبار علنية لمقارنة التنفيذين من دون تحويل منصة السجلات إلى مخزن مفاتيح إضافي.

تضم المسودة متجهات KMAC لـIPv4 وIPv6، مع تضمين خيارات TCP الأخرى في المصادقة أو استبعادها. اجتياز متجه يثبت أن بناءً محدداً أعاد إنتاج تلك الحالة. ولا يثبت أن الموقع حمل MKT نفسها أو اختار الاتجاه نفسه أو صادق البايتات نفسها في الاتصال الحي.

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

يوفر مبدأ Minimum Initial Specification لدى Heng Lu معياراً واضحاً. يجب أن تكون الطبقة المشتركة صغيرة، لكنها صارمة في كل ما يلزم لإنتاج النتيجة نفسها: الصيغة وأدوار الوسائط والترميز والسياق والأطوال. يمكن أن تبقى المكتبة والواجهة ومخزن المفاتيح قرارات محلية؛ أما عقد الحساب فلا يمكن أن يصبح محلياً.

تضع Running-Code Primacy المتجه القابل لإعادة الإنتاج والبايتات الفعلية فوق الملصق. وتفصل Reality Layers بين المسودة وطلب التسجيل والإعداد والاشتقاق والتحقق من المقطع والاتصال والخدمة. هذا تطبيق تحريري من Daniel Kade لأفكار Heng Lu، وليس موقفاً منسوباً إلى IETF أو NIST.

كما أن حدود الادعاء ضرورية. لا تقول المراجعة إن KMAC أو TCP-AO مكسور، ولا تثبت اختلاف تطبيقات المراجعة 07، ولا تسمي مورداً أخطأ. طرحت مراجعة Security Directorate سابقة أسئلة عن الفائدة والأطوال ومساحة الخيارات، لكن السجل العلني لا يثبت أنها سببت النص الجديد.

الخلاصة التشغيلية محددة: KMAC256 اسم اختيار، أما موضوع التشغيل البيني فهو مثيل الدالة الكامل مع مدخلاته وأثره. من يحفظ الأول فقط يعرف ما أراد تشغيله؛ ومن يحفظ الثاني يستطيع إثبات ما نُفذ فعلاً.

المصادر