انتقل إلى المحتوى
MaxyTools

بصمات MD5 وSHA-256 وbcrypt: التحقق من ملف وتخزين كلمة مرور

آخر تحديث · 3 دقائق قراءة

· آخر تحديث في

تنزّل برنامجًا فيعرض الموقع سلسلة طويلة من الحروف والأرقام بجوار الرابط: تلك بصمة (hash) تتيح لك التحقق من أن الملف لم يتلف ولم يُعدَّل. وتُستخدم الآليات نفسها، في سياق آخر، لتخزين كلمات المرور. ويتطلب الاستخدامان خوارزميتين مختلفتين، والخلط بينهما خطأ أمني شائع.

ما البصمة

تحوّل دالة التجزئة أي بيانات (كلمة، ملف حجمه 4 غيغابايت) إلى سلسلة ذات طول ثابت. وهي حتمية (المدخل نفسه يعطي البصمة نفسها دائمًا) وحساسة: تغيير بت واحد يغيّر النتيجة كليًا. فمثلًا SHA-256 للنص «abc» تبدأ بـ ba7816bf…، أما «abd» فتبدأ بـ a52d159f…، دون أي شبه. ولا يمكن عكس العملية: لا تستعيد النص من البصمة.

طول البصمات الشائعة
الخوارزميةالحجمالأحرف الست عشريةالحالة
MD5128 بتًا32مكسورة أمنيًا (يمكن افتعال تصادمات)؛ وتكفي لكشف تلف عرضي.
SHA-1160 بتًا40متقادمة أمنيًا.
SHA-256256 بتًا64المرجع الحالي للسلامة.
SHA-512512 بتًا128بصمة أطول.

التحقق من ملف منزَّل، خطوة بخطوة

  1. اعثر على البصمة المنشورة في الموقع الرسمي (غالبًا «SHA256» أو «checksum»)، ويُفضَّل في صفحة HTTPS مختلفة عن رابط التنزيل.
  2. افتح مولّد بصمة SHA-256 (أو مولّد بصمة MD5 إن نُشرت MD5 فقط) وأفلت الملف. يُقرأ على كتل من 4 ميغابايت مع شريط تقدم: فحتى الملف الكبير (حتى 4 غيغابايت) لا يستنزف الذاكرة. ويمكنك إفلات عدة ملفات.
  3. الصق البصمة المنتظرة في «مقارنة»: تُقبل الصيغة الست عشرية (بأحرف كبيرة أو صغيرة، مع «:» أو بدونها) أو base64 أو سطر ناتج sha256sum.
  4. إن أظهرت الأداة تطابقًا فالملف مطابق للذي أصدره الناشر. وإلا فلا تفتحه: نزّله من جديد.

نقطة مهمة: البصمة تتحقق من أنك تلقيت الملف نفسه الموصوف، لا من أن الملف غير ضار. فإن كان المهاجم يتحكم في الملف وفي البصمة المعروضة في الصفحة نفسها فإن الفحص لا يثبت شيئًا.

تجزئة نص: التفاصيل التي تغيّر كل شيء

يُجزَّأ النص بترميز UTF-8، تمامًا كما كُتب. وفاصل سطر في النهاية يغيّر البصمة: SHA-256 للنص «abc» وللنص «abc» متبوعًا بسطر جديد مختلفتان كليًا (edeaaff3… مقابل ba7816bf…). وهذا أكثر أسباب «البصمة لا تتطابق» تكرارًا: تحقق من المسافات وفواصل الأسطر غير المرئية. وفعّل HMAC لإنتاج رمز مصادقة بمفتاح سري: لا يستطيع إعادة إنتاج البصمة نفسها إلا من يعرف المفتاح.

كلمات المرور: لماذا لا SHA-256، وbcrypt بدلًا منها

  • الملح عشوائي ومضمَّن في النتيجة: كلمة المرور نفسها تعطي تجزئة مختلفة في كل مرة، ويبقى التحقق يعمل.
  • لا يقرأ bcrypt إلا أول 72 بايتًا من كلمة المرور (في UTF-8 يُحسب الحرف العربي أو المشكول بايتين، والرمز التعبيري 4): تنبّهك الأداة عند تجاوز الحد.
  • يجري الحساب دون تجميد الشاشة، بشريط تقدم حقيقي؛ ولا تُرسل كلمة المرور ولا تُحفظ.

لاختيار كلمة مرور قوية اقرأ كلمات المرور القوية: الإنتروبيا وعبارات المرور وتسريبات البيانات.

أخطاء شائعة

  • استخدام MD5 أو SHA-1 للتواقيع أو كلمات المرور.
  • تخزين كلمات المرور بـ SHA-256 عادية، ولو مملّحة.
  • مقارنة البصمات بالعين: يختلف حرف واحد ولا تراه. استخدم مقارنة الأداة.
  • تجاهل فروق الحالة أو فواصل الأسطر عند تجزئة نص.
  • الاعتقاد بأن بصمة مطابقة تضمن أن الملف غير ضار.

حدود ينبغي الاعتراف بها

  • التجزئة لا تشفّر شيئًا: لا يمكن عكسها، لكن كلمات المرور القصيرة يمكن إيجادها بالتخمين.
  • ينبغي ألا تُستخدم بصمات MD5 وSHA-1 للأمان بعد الآن.
  • bcrypt خيار متين لكنه لا يغني عن سياسة كاملة (تحديد المحاولات، المصادقة الثنائية).

الأسئلة الشائعة

هل يُرفع ملفي لحساب بصمته؟

لا. يجري الحساب في متصفحك؛ ويُقرأ الملف على كتل من 4 ميغابايت على جهازك.

لماذا لنصين متشابهين تقريبًا بصمتان لا علاقة بينهما؟

بحكم التصميم: تغيير بت واحد يغيّر النتيجة كليًا. ويسمى هذا أثر الانهيار الجليدي.

هل ما زال MD5 صالحًا للاستخدام؟

لكشف تلف عرضي، نعم. أما لأي غرض أمني (توقيع، كلمة مرور) فلا: استخدم SHA-256 أو، لكلمات المرور، bcrypt.

أي تكلفة bcrypt أختار؟

من 10 إلى 12 لموقع ويب. اختر أعلى قيمة تدعمها خوادمك دون إبطاء دخول المستخدمين.

هل يمكن استعادة نص من بصمته؟

ليس مباشرة. لكن كلمة مرور قصيرة أو شائعة يمكن إيجادها بالتخمين، ومن هنا قيمة خوارزمية بطيئة مثل bcrypt.

الأدوات المذكورة في هذا الدليل

أدلة أخرى

يكتب فريق MaxyTools هذه الأدلة اعتمادًا على طريقة عمل أدواتنا فعليًا. الأرقام المذكورة إما حسابات يمكنك إعادتها وإما أوامر مقدار تُذكر على أنها كذلك. هل وجدت خطأ؟ راسلنا من صفحة اتصل بنا.