الخلاصة
- وصف RFC 1321 المنشور في أبريل 1992 خوارزمية MD5 وأرفق بها تنفيذاً مرجعياً بلغة C ومشغّل اختبارات وسبع نتائج متوقعة. صار بوسع منفذي البرمجيات قياس ناتج برامجهم على مرجع مشترك.
- حدّث RFC 6151 الصادر في 2011 الحكم الأمني: لم يعد MD5 مناسباً حين تكون مقاومة التصادم مطلوبة، ومنها التوقيعات الرقمية. بقيت النتائج القديمة صالحة للتحقق من طريقة الحساب نفسها.
وصفة مكتوبة ومطبخ يعمل
تظهر بصمة MD5 عادة كسطر من الحروف والأرقام السداسية. يشرح RFC 1321 الطريق إلى ذلك السطر. تُضاف بتات حتى يصل طول الرسالة إلى موضع محدد، ثم يُضاف طولها الأصلي. يبدأ الحساب بأربع كلمات من 32 بت ويعالج البيانات في كتل من 512 بت. يكفي أن يعكس مبرمج ترتيب البايتات أو يضع بت حشو في غير مكانه لكي تختلف بصمته عن بصمة زميله للرسالة ذاتها. كان الاتفاق بين الحواسيب يحتاج إلى تفاصيل أصغر من العناوين الكبيرة.
وضع Rivest وسائل التحقق في الملحق A. احتوى global.h وmd5.h وmd5c.c وmddriver.c. شغّل الملف الأخير الاختبارات على النصوص والملفات والمدخل القياسي، وكانت له خاصية -x لاختبار مجموعة ثابتة. ثم عرض الملحق A.5 سبع إجابات منتظرة، تبدأ بالنص الفارغ وa وabc، وتتقدم إلى سلاسل أطول من الحروف والأرقام. جواب abc هو 900150983cd24fb0d6963f7d28e17f72. يستطيع صاحب تنفيذ جديد تشغيل هذه الحالات ومقارنة النتائج فوراً. كأن كراسة الامتحان وصلت ومعها مفتاح التصحيح في الصفحة الأخيرة.
أُخذت الشيفرة المرجعية من RSAREF، وهي أدوات تشفير لـ Privacy-Enhanced Mail. حين صارت جزءاً من RFC، أصبح الانتقال من القاعدة المكتوبة إلى برنامج يعمل أقصر بكثير. فريق يكتب تنفيذاً مستقلاً يستطيع مراجعة مخرجاته؛ وفريق ينقل الشيفرة إلى جهاز مختلف يستطيع كشف خطأ في التمثيل أو ترتيب البايتات. وصف النص التنفيذ بأنه قابل للنقل، وأشار حتى إلى تحسين يناسب بعض الأجهزة التي تخزن البايت الأقل أهمية أولاً. لم يكن على المبرمج أن يكتفي بالثقة في الرسوم: يمكنه إعادة الحساب على جهازه.
كان وراء هذا الاهتمام بالتنفيذ رهان أمني واضح. جاءت MD5 امتداداً لـ MD4. يرى نص 1992 أن تبني MD4 ربما سبق ما أتاحته المراجعة النقدية وقتها؛ لذلك تراجع MD5 قليلاً عن السرعة طلباً لهامش أمان أكبر. من الاستخدامات المقصودة التوقيع الرقمي: يُختصر الملف الكبير أولاً إلى بصمة ثم تدخل البصمة في العملية بالمفتاح الخاص. وضع المؤلف الخوارزمية في المجال العام للمراجعة وإمكان اعتمادها معياراً، بينما صُنّف RFC نفسه ضمن الوثائق المعلوماتية. كان البرنامج القابل للتشغيل يسير بجوار توقع بشأن صعوبة إيجاد رسالتين لهما البصمة ذاتها.
تعالج النتائج السبع المسألة الأولى: هل نفذ الحاسوب الحساب الموصوف؟ أما إمكان صناعة تصادم مقصود فيحتاج إلى فحص ما يستطيع خصم ماهر ترتيبه. اجتياز كل تمارين آخر الكتاب يثبت أن الطالب طبق طريقة الحل في تلك التمارين. وقد يكتشف الباحثون لاحقاً سبباً لتعديل النظرية التي بنيت عليها مسألة الأمن. تعطي أمثلة الاختبار انضباطاً للتنفيذ؛ ويضع التحليل التشفيري الحكم على صمود التصميم أمام الهجوم.
في مارس 2011 جاء RFC 6151 بذلك التعديل. بعد نشر هجمات على MD5، حكم بأن استخدامه لم يعد مقبولاً حيث تتطلب التطبيقات مقاومة التصادم، ولا سيما التوقيعات الرقمية. ناقش على حدة استخدامات أخرى، منها HMAC-MD5 والمجاميع التي تكشف أخطاء عرضية، ونصح مصممي البروتوكولات الجديدة بتجنب HMAC-MD5. بقيت بصمة abc هي نفسها. تغير ما يمكن للمصمم أن يبني فوق هذه البصمة من ضمانات.
تروي الوثيقتان معاً حكاية دقيقة عن انتقال المعرفة التقنية. جمعت ورقة 1992 القاعدة والبرنامج ونتائج مراقبة مشتركة، فسهّلت على مطورين مستقلين الوصول إلى الحساب نفسه. وراجعت ورقة 2011 القيمة الأمنية لذلك الحساب بعد أن تقدمت الأبحاث. يمكن لبرنامج صحيح أن يظل صحيحاً تماماً في حساب MD5، فيما يحتاج نظام التوقيع إلى اختيار مختلف. لم تُمحَ ورقة الإجابات؛ تغير السؤال الذي يريد الناس جواباً آمناً عنه.
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات





