دوال تجزئة التشفير
في هذا الدرس سنتناول دوال تجزئة التشفير التي تجد استخداماً واسعاً في التحقق السريع والمصادقة.
بنهاية الدرس سنكون قد تناولنا:
- ما هي دوال تجزئة التشفير
- أمثلة كود بايثون توضح استخدام دوال التجزئة
- نظرة على تطبيقات التجزئة التشفيرية
- أمان التجزئة التشفيرية
- التهديدات لهذه الخوارزميات من الحواسيب الكلاسيكية والكمومية على حد سواء
مقدمة إلى التجزئة التشفيرية
تمثّل دوال التجزئة بنية قيّمة في علم التشفير لأنها تتيح التحقق مع الحفاظ على السرية. وبهذا تُشكّل دوال التجزئة مكوناً مهماً في آليات مصادقة البيانات وسلامتها، كـرموز مصادقة الرسائل المستندة إلى التجزئة (HMAC) والتوقيعات الرقمية. ستناقش هذه المقالة الأفكار الأساسية واعتبارات الأمان التي تدعم دوال تجزئة التشفير، وتستعرض الثغرات المحتملة الناجمة عن ظهور الحوسبة الكمومية.
الأساس المنطقي والتصميم الأساسي لدوال التجزئة
كثيرة هي الحالات التي تحتاج فيها المصادقة والتحقق من السلامة إلى إجرائها بتكلفة منخفضة دون الكشف عن معلومات خاصة للطرف المُنفِّذ للتحقق.
فمثلاً، عند تنزيل برنامج من خادم بعيد، ثمة حاجة إلى آلية فعّالة للتحقق من أن البرنامج المُنزَّل لم يُعدَّل منذ إنشائه من قِبل مؤلفه الأصلي. وبالمثل، عند مصادقة مستخدمي تطبيقات الويب، سيكون من المُفضَّل استخدام آلية لا تنطوي على التخزين الفعلي لكلمات المرور أو نقلها، مما قد يُعرّض سريتها للخطر.
تُعالج دوال تجزئة التشفير (CHFs) هذه الاحتياجات بكفاءة وأمان.
في جوهرها، تأخذ دالة تجزئة التشفير مدخلاً (أو رسالة) بطول عشوائي وتُعيد سلسلة ثابتة الحجم من n بت كمخرج. يُسمى مخرج CHF أيضاً ملخصاً. ينبغي أن تُحقق دالة CHF مفيدة عدة خصائص أساسية:
- التوحيد: ينبغي أن تتوزع الملخصات التي تُنتجها دالة CHF بشكل منتظم وأن تبدو عشوائية. الهدف ضمان أن المخرج لا يكشف عن أي معلومات حول المدخل.
- الحتمية: لمدخل معين، يجب أن تُنتج دالة CHF دائماً نفس الملخص، أي أنها يجب أن تكون حتمية.
- اللا-عكسية: دالة CHF هي دالة أحادية الاتجاه بمعنى أنه بمعلومية الملخص، ينبغي أن يكون عكس التجزئة للحصول على المدخل أمراً غير ممكن عملياً.
- الحقنية التقريبية: رغم أن دوال CHF هي دوال كثير-إلى-واحد، ينبغي أن تبدو كدوال واحد-إلى-واحد. يتحقق هذا بالجمع بين حجم فضاء مخرجات ضخم وتأثير الشلال الذي يجعل التغييرات الطفيفة في المدخل تؤدي إلى ملخصات مختلفة اختلافاً جذرياً. تُعرف هذه الخاصية بالحقنية التقريبية.
بناءً على هذا ، يمكن التحقق من صحة بيانات ما مقارنةً بالنسخة الأصلية عبر مقارنة ملخص البيانات بملخص الأصل.
- إذا تطابق الملخصان، يمكننا الثقة باحتمال مرتفع بأن البيانات مطابقة للأصل.
- إذا اختلفا، يمكننا التأكد من أن البيانات عُبث بها أو أنها غير أصيلة.
نظراً لأن ملخصات CHF لا تكشف عن المحتوى الفعلي للبيانات أو الأصل، فإنها تتيح التحقق مع الحفاظ على الخصوصية.
Mathematical description
يمكن تعريف دالة التجزئة على النحو التالي:
حيث هي مجموعة جميع السلاسل الممكنة التي يمكن اعتبارها سلاسل ثنائية بأي طول.
كون حجم نطاق المدخلات لـ غير محدود بينما حجم مجال المخرجات محدود يعني بالضرورة أن دالة كثير-إلى-واحد تُعيّن لأجل ما لا نهاية من المدخلات أي سلسلة n-بت معطاة.
خاصيتا التوحيد والحتمية محتوَيتان بشكل جميل في نموذج الأوراكل العشوائي للتجزئة التشفيرية.