الخلاصة

  • يصف RFC 1319 MD2 كخوارزمية تحول رسالة بأي طول إلى بصمة أو ملخص رسالة من 128 بت.
  • يقصد RFC الخوارزمية لتطبيقات التوقيع الرقمي، ويورد توقعات زمنه لصعوبة إيجاد تصادم أو رسالة لملخص هدف محدد، وينبه إلى أن MD2 كانت جديدة وتحتاج تحليلاً إضافياً.
  • تساوي الملخصات دليل على حساب لبايتات وخوارزمية محددة. وليس وحده توقيعاً أو هوية أو حيازة مفتاح أو منشأ أو نقل أو استلام أو وقتاً موثوقاً أو تفويضاً أو نتيجة.

القيمة القصيرة لم تختصر القصة

فائدة MD2 أن رسالة طويلة كيفما كانت يمكن تمثيلها بقيمة ثابتة الطول. يقول RFC 1319 إن المدخل بطول اعتباطي والمخرج 128 بت. يفيد ذلك في مقارنة نسخ مرشحة من غير حمل كل الرسالة في كل موضع، لكنه لا يحفظ من كتب البايتات أو من نشر القيمة أو الطريق الذي سلكته النسخة أو من قبلها.

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

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

MD2 عرّفت تحويلاً للبايتات

يصف RFC الحشو وchecksum ومخزناً داخلياً من 48 بايت قبل 16 بايت النهائية. وهذا يربط الملخص بما عُرض فعلاً على الحساب. قول «الملف نفسه» لا يكفي من دون تحديد هل حُسبت الحاوية أم الحمولة المستخرجة أم المحتوى المفكوك أم نص مطبّع.

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

صعوبة التصادم لم تكن إسناداً

يريد RFC جعل إيجاد رسالتين بالملخص نفسه صعباً، وجعل إنتاج رسالة لملخص هدف محدد سابقاً صعباً. يقدّر، في سياق 1992، نحو 2^64 عملية للتصادم و2^128 لهدف مسبق. ويقول في الوقت نفسه إن MD2 جديدة نسبياً وتحتاج فحصاً إضافياً.

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

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

تطبيق التوقيع أضاف سجلات أخرى

كون MD2 معدة لتطبيق توقيع رقمي لا يعني أن MD2 توقّع. يمكن أن يكون الملخص في تطبيق كهذا مدخلاً لمخطط مستقل له خوارزمية توقيع ومفتاح خاص وتوقيع ومفتاح عام وتحقق وسياسة تربط المفتاح بهوية مزعومة.

يجب حفظ الترتيب: اختيار البايتات وحساب MD2؛ ثم توقيع منفصل؛ ثم تحقق بالمفتاح العام؛ ثم تقييم أساس هوية المفتاح؛ ثم قرار التطبيق. النقل والاستلام قد يظلان خارج هذه السلسلة. عبارة «الهاش وقّع المستند» تحذف العملية والموقّع. وعبارة «الملخص يثبت المرسل» تحذف هوية المفتاح والنقل. وعبارة «البصمة تثبت الاستلام» تحذف ملاحظة المستلم.

التطابق بقي مقارنة محدودة

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

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

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

صمت RFC لم يكن دليلاً معاكساً

لا يسمي RFC 1319 تطبيقاً حياً أو حامل مفتاح أو سياسة شهادة أو خدمة وقت أو طريق نقل أو مستلماً. لا يثبت ذلك غياب هذه المعلومات عن كل نظام؛ بل يثبت أن مواصفة MD2 ليست مصدرها.

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

درس RFC 1319 الدائم ضيق وقوي: يجعل مقارنة بايتات محددة عملية. وإذا طُلب منه أن يكون توقيعاً وهوية وتسليماً وقراراً في آن، فقد دقته ذاتها.

المصادر وحدود الدليل

يعتمد هذا المقال على RFC 1319، The MD2 Message-Digest Algorithm (أبريل 1992). وهو يدعم المدخل الاعتباطي، ومخرج MD2 ذي 128 بت، وتوقعات التصادم والهدف المحدد في حينه، والاستخدام المقصود في التوقيع الرقمي والتحذير من التحليل الإضافي. ولا يدعم ملاءمة تشفيرية حالية أو تطبيقاً محدداً أو توقيعاً أو هوية موقّع أو حيازة مفتاح أو شهادة أو وقتاً موثوقاً أو منشأ أو نقلاً أو تخزيناً أو استلاماً أو تفويضاً أو عدم إنكار أو نتيجة تطبيق.