تخطي إلى المحتوى الرئيسي
FreeOnlineTools Go
العربية
توضيح

شرح خوارزميات التجزئة: SHA-256 وSHA-1 وMD5

بواسطة FreeOnlineTools Team · تم التحديث في 2026-08-28

إجابة سريعة

SHA-256 ينتج 64 حرفاً ست عشرية وهو آمن حالياً. SHA-1 ينتج 40 حرفاً ولكنه مهجور. MD5 ينتج 32 حرفاً ولكنه معطوب. استخدم مولّد التجزئة المجاني لإنشاء تجزئة SHA-256 في متصفحك.

مقدمة

التجزئة التشفيرية تأخذ مدخلات من أي حجم وتنتج مخرجات ذات حجم ثابت تسمى التجزئة. هي دالة أحادية الاتجاه — لا يمكن عكسها. SHA-256 آمن وموصى به، SHA-1 مهجور وغير آمن، وMD5 معطوب ولا ينبغي استخدامه لأغراض أمنية.

خطوة بخطوة

  1. فهم خصائص دالة التجزئة

    تجزئة التشفير الجيدة هي حتمية (نفس المدخلات تؤدي دائمًا إلى نفس المخرجات)، ومخرجات ذات حجم ثابت، وسريعة الحساب، وغير قابلة للعكس (مقاومة ما قبل الصورة)، وغير مجدية للعثور على مدخلين بنفس المخرجات (مقاومة الاصطدام)، والانهيارات الجليدية (تغيير المدخلات الصغير يقلب ~ 50٪ من بتات الإخراج).

  2. تعرف على أحجام الملخص

    MD5 ينتج 128 بت (32 حرفًا سداسيًا عشريًا). ينتج SHA-1 160 بت (40 حرفًا سداسيًا عشريًا). SHA-256 ينتج 256 بت (64 حرفًا سداسيًا عشريًا). ينتج SHA-512 512 بت (128 حرفًا سداسيًا عشريًا). تعمل عمليات الهضم الأطول على تقليل احتمالية الاصطدام ولكنها تزيد من حجم التخزين.

  3. تعرف على سبب تعطل MD5 وSHA-1

    وجد الباحثون هجمات تصادمية عملية ضد MD5 (2004) وSHA-1 (2017، هجوم SHAttered). تتيح التصادمات للمهاجم إنشاء مدخلين مختلفين بنفس التجزئة، مما يؤدي إلى كسر التوقيعات الرقمية وسلطات التصديق. لا ينبغي أن تستخدم للأمن.

  4. اختر الخوارزمية الصحيحة

    بالنسبة للتحقق من سلامة الملفات حيث تكون السرعة أكثر أهمية من الأمان، لا يزال MD5 أو SHA-1 شائعين. بالنسبة لأي استخدام حساس للأمان (كلمات المرور، التوقيعات، الشهادات، blockchain)، استخدم SHA-256 أو SHA-512. لتخزين كلمات المرور، استخدم KDF بطيء مثل bcrypt أو scrypt أو Argon2 - لا يوجد SHA-256 خام على الإطلاق.

  5. حساب التجزئة والتحقق منها

    استخدم Hash Generator لتجزئة النص باستخدام أي خوارزمية، أو File Hash لحساب تجزئة ملف محلي. قارن الملخص الناتج بقيمة جيدة معروفة للتحقق من سلامته - ففارق البت الواحد يعني أن الملف تالف أو تم العبث به.

أمثلة

MD5 من 'hello' (128 بت، 32 حرفًا سداسيًا عشريًا)

مدخل: hello

الإخراج: 5d41402abc4b2a76b9719d911017c592

SHA-256 من 'hello' (256 بت، 64 حرفًا سداسيًا عشريًا)

مدخل: hello

الإخراج: 2cf24dba5fb0d30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

تأثير الانهيار الجليدي - تغيير حرف واحد

مدخل: مرحبا مقابل مرحبا

الإخراج: SHA-256('hello') يبدأ 2cf24dba... بينما SHA-256('Hello') يبدأ 185f8db3... — مختلف تمامًا على الرغم من تغيير الإدخال بمقدار بت واحد

المشاكل الشائعة

  • استخدام MD5 أو SHA-1 لتجزئة كلمة المرور: كلاهما سريع ومكسور، مما يجعل هجمات القوة الغاشمة وهجمات جدول قوس قزح تافهة. استخدم bcrypt أو scrypt أو Argon2 بدلاً من ذلك.
  • الخلط بين التجزئة والتشفير: التجزئة أحادية الاتجاه ولا رجعة فيها؛ التشفير ذو اتجاهين. لا يمكنك "فك تشفير" التجزئة، بل يمكنك فقط مقارنة التجزئة.
  • تجاهل هجمات الامتداد الطويل: MD5، وSHA-1، وSHA-256، وSHA-512 كلها عرضة لهجمات الامتداد الطويل عند استخدامها كأجهزة MAC. استخدم HMAC-SHA256 لمصادقة الرسالة.
  • مقارنة التجزئة مع == بدلاً من المقارنة في الوقت الثابت: تسمح تسريبات التوقيت للمهاجمين باستعادة التجزئة بايت بايت. استخدم مقارنة زمنية ثابتة في رمز الأمان.

نصائح

  • الافتراضي هو SHA-256 للأنظمة الجديدة — فهو سريع ومدعوم على نطاق واسع وليس له هجوم تصادم عملي اعتبارًا من عام 2026.
  • لتخزين كلمات المرور، استخدم bcrypt مع عامل عمل 12+ (أو Argon2id مع ذاكرة 64 ميجابايت) - لا تستخدم SHA-256 الخام أبدًا، وهو سريع جدًا مقابل وحدات معالجة الرسومات.
  • عند التحقق من تنزيلات الملفات، قارن بين اسم الخوارزمية والملخص — تجزئة SHA-1 لا معنى لها إذا كان الناشر يقصد SHA-256 فقط.
  • استخدم أداة تجزئة الملف لحساب SHA-256 من الملفات الكبيرة محليًا دون تحميلها - فهي تقوم ببث الملف من خلال Web Crypto API.

الأدوات ذات الصلة

أدلة ذات صلة

مراجع