دالة تلبيد: الفرق بين النسختين

[نسخة منشورة][نسخة منشورة]
تم حذف المحتوى تمت إضافة المحتوى
ط إصلاح الوصلات الميتة
سطر 57:
إذا تم تطبيق الدالة هاش على المجموعة ''m'' في خانات الجدول ''n''، يجب أن تقل احتمالية تلقي المجموعات لأكثر من ''m/n''. وخاصةً إذا كانت قيمة ''m'' أقل من ''n''. حيث يجب أن يحتوى عدد قليل من المجموعات على تسجيل أو اثنين. (لا يجب أن تحتوى المجموعة في "دالة هاش المثالية" على أكثر من تسجيل واحد؛ ولكن هناك عدد حتمي من التصادمات حتى لو كانت قيمة ''n'' أكبر بكثير من ''m''.
 
عند اختبار دالة هاش، يُمكن تقييم تماثل توزيع قيم هاش باستخدام اختبار مربع كاي.<ref>بريت مولفي، [http://web.archive.org/web/20080325235337/http://bretm.home.comcast.net/~bretm/hash/ دالات هاش] 11 أبريل 2009</ref>
 
===متغيرات متعددة===
سطر 128:
يمكن تكييف بعض الخوارزميات الاختبارية أو البصمات المعينة لتُستخدم كدلات هاش. وستُحدد بعض هذه الخوارزميات بيانات ذات سلسلة طويلة ''z'' وتوزيع نموذجي—سواء كان متساوي أم لا—من خلال سلسلة 32 بت أو 64 بت. ومن ثم يمكن استخراج قيمة هاش من 0 إلى ''1-n''.
 
ويمكن أن ينتج عن هذا الأسلوب توزيع موحد لقيم هاش ما دام حجم مجموعة هاش ''n'' صغير، مقارنةً بمجموعة الدالات الاختبارية. ومع ذلك، لا تنجح بعض المجاميع الاختبارية في اختبار الانهيار الأفالانشي في بعض التطبيقات. ويُوفر اختبار CRC32 الأكثر شعبيةً 16 بت فقط لاستخدامها في دالة هاش. بالإضافة إلى ذلك، تُؤثر كل بت من المُدخلات على بت واحد فقط من الـCRC32؛ لذا يجب الحرص على استخدام جميع الـ32 بت عند تصميم الدالة هاش.<ref>بريت مولفي، ''[http://web.archive.org/web/20081209031533/http://home.comcast.net/~bretm/hash/8.html تقييم الـCRC32 لجداول هاش]''، في ''[http://web.archive.org/web/20081208155750/http://home.comcast.net/~bretm/hash/ دالات هاش]'' 10 أبريل 2009.</ref>
 
===تطبيق هاش من خلال دالات هاش الرمزية===
تتميز بعض دالات هاش الرمزية مثل SHA-1 بضمانات موحدة قوية أكثر من الدالات الاختبارية. وبالتالي، يمكنها أن توفر دالات هاش ذات أغراض عامة.
 
وفي التطبيقات العادية، يُعتبر هذا الأسلوب غير كافي لتعويض تكلفته المرتفعة.<ref>بريت مولفي، ''[http://web.archive.org/web/20081209031538/http://home.comcast.net/~bretm/hash/9.html تقييم SHA-1 لجداول هاش]''، في ''[http://web.archive.org/web/20081208155750/http://home.comcast.net/~bretm/hash/ دالات هاش]''. 10 أبريل 2009.</ref> ومع ذلك، يمكن أن تُوفر هذه الطريقة دالات هاش مُوزعة بشكل متجانس حتى في حالة اختيار المفاتيح من قبل عامل خبيث. وقد يُساعد هذا الأسلوب في حماية الخدمات ضد [[هجمات الحرمان من الخدمات]].
 
== أصل المصطلح ==