دالة هاش Hash

ما تعريف دالة هاش؟

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

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

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

أنواع دالة هاش

تعتمد دالة داش على خوارزميات عديدة، ويتلخص أكثرها استخداماً فيما يلي:

  • “إم دي 5” (MD5): تعد أكثر دالات هاش انتشاراً رغم قصر عمرها، وتستخدم عادةً للتحقق من مصداقية البيانات، وتعمل على ترميز سلسلة من المعلومات وجعلها بصيغة 128 بت.
  • “إس آتش أيه -2” (SHA-2): طوّرتها وكالة الأمن القومي الأميركية (National Security Agency) وتعمل من خلال التشفير أو الترميز على إنتاج عناصر بصيغة 160 بت وتحمل رقماً عشريّاً.
  • “سي آر سي 32” (CRC32): تُستخدم أيضاً للتحقق من مصداقية البيانات، وتعتمد على فحص التكرار الدوري (CRC) للتحقق من حدوث تغييرات غير متوقعة في البيانات، وينتج عن الترميز عبر هذه الدالة عناصر بالصيغة نفسها.

 اقرأ أيضاً: