SHA-1 (اختصار لـ Secure Hash Algorithm 1) هي إحدى وظائف تجزئة التشفير العديدة.
يتم استخدامه غالبًا للتحقق من عدم تغيير الملف. يتم ذلك عن طريق إنتاج مجموع اختباري قبل إرسال الملف ، ثم مرة أخرى بمجرد وصوله إلى وجهته.
لا يمكن اعتبار الملف المرسل أصليًا إلا إذا كان كلا مجموعتي الاختباريين متطابقين.
التاريخ ونقاط الضعف في دالة SHA Hash
SHA-1 هي واحدة فقط من الخوارزميات الأربعة في عائلة خوارزمية التجزئة الآمنة (SHA). تم تطوير معظمها من قبل وكالة الأمن القومي الأمريكية (NSA) ونشرها المعهد الوطني للمعايير والتكنولوجيا (NIST).
SHA-0 يحتوي على حجم ملخص للرسالة يبلغ 160 بت (قيمة تجزئة) وكان الإصدار الأول من هذه الخوارزمية. يبلغ طول قيم التجزئة الخاصة به 40 رقمًا. تم نشره تحت اسم "SHA" في عام 1993 ولكن لم يتم استخدامه في العديد من التطبيقات لأنه تم استبداله بسرعة بـ SHA-1 في عام 1995 بسبب عيب أمني.
SHA-1 هو التكرار الثاني لوظيفة تجزئة التشفير هذه. يحتوي هذا أيضًا على ملخص للرسالة يبلغ 160 بت ويسعى إلى زيادة الأمان عن طريق إصلاح نقطة ضعف موجودة في SHA-0. ومع ذلك ، في عام 2005 ، وجد أن SHA-1 غير آمن أيضًا.
بمجرد العثور على نقاط ضعف التشفير في SHA-1 ، أدلى NIST ببيان في عام 2006 شجع الوكالات الفيدرالية على اعتماد استخدام SHA-2 بحلول عام 2010. SHA-2 أقوى من SHA-1 ، والهجمات التي شنت ضد SHA-2 من غير المرجح أن يحدث مع قوة الحوسبة الحالية.
ليس فقط الوكالات الفيدرالية ، ولكن حتى شركات مثل Google و Mozilla و Microsoft قد بدأت جميعها إما في خطط لإيقاف قبول شهادات SHA-1 SSL أو قامت بالفعل بحظر تحميل هذه الأنواع من الصفحات.
لدى Google دليل على تصادم SHA-1 الذي يجعل هذه الطريقة غير موثوقة لإنشاء مجاميع اختبارية فريدة ، سواء كانت تتعلق بكلمة مرور أو ملف أو أي جزء آخر من البيانات. يمكنك تنزيل ملفي PDF فريدين من SHAttered لمعرفة كيفية عمل ذلك. استخدم آلة حاسبة SHA-1 من أسفل هذه الصفحة لإنشاء المجموع الاختباري لكليهما ، وستجد أن القيمة هي نفسها تمامًا على الرغم من احتوائها على بيانات مختلفة.
SHA-2 و SHA-3
تم نشرSHA-2 في عام 2001 ، بعد عدة سنوات من SHA-1. يتضمن ست وظائف تجزئة بأحجام مختصرة مختلفة: SHA-224 و SHA-256 و SHA-384 و SHA-512 و SHA-512/224 و SHA-512 / 256.
تم تطويره بواسطة مصممين غير تابعين لوكالة الأمن القومي وتم إصداره بواسطة NIST في عام 2015 ، وهو عضو آخر في عائلة خوارزمية التجزئة الآمنة ، تسمى SHA-3 (Keccak سابقًا).
SHA-3 ليس من المفترض أن يحل محل SHA-2 مثل الإصدارات السابقة التي كان من المفترض أن تحل محل الإصدارات السابقة. بدلاً من ذلك ، تم تطويره كبديل آخر لـ SHA-0 و SHA-1 و MD5.
كيف يتم استخدام SHA-1؟
أحد الأمثلة الواقعية حيث يمكن استخدام SHA-1 هو عندما تقوم بإدخال كلمة المرور الخاصة بك في صفحة تسجيل الدخول إلى موقع الويب. على الرغم من حدوث ذلك في الخلفية دون علمك ، فقد تكون هذه هي الطريقة التي يستخدمها موقع الويب للتحقق بشكل آمن من صحة كلمة المرور الخاصة بك.
في هذا المثال ، تخيل أنك تحاول تسجيل الدخول إلى موقع ويب تزوره كثيرًا. في كل مرة تطلب فيها تسجيل الدخول ، سيُطلب منك إدخال اسم المستخدم وكلمة المرور.
إذا كان موقع الويب يستخدم وظيفة تجزئة التشفير SHA-1 ، فهذا يعني أن كلمة المرور الخاصة بك قد تحولت إلى مجموع اختباري بعد إدخالها. ثم تتم مقارنة هذا المجموع الاختباري بالمجموع الاختباري المخزن على موقع الويب الذي يتعلق بحسابك الحالي كلمة المرور ، سواء لم تقم بتغيير كلمة المرور الخاصة بك منذ قيامك بالتسجيل أو إذا قمت بتغييرها منذ لحظات. إذا تطابق الاثنان ، فسيتم منحك حق الوصول ؛ إذا لم يفعلوا ذلك ، فسيتم إخبارك أن كلمة المرور غير صحيحة.
مثال آخر حيث يمكن استخدام وظيفة التجزئة هذه هو التحقق من الملف.ستوفر بعض مواقع الويب المجموع الاختباري SHA-1 للملف في صفحة التنزيل بحيث عند تنزيل الملف ، يمكنك التحقق من المجموع الاختباري لنفسك للتأكد من أن الملف الذي تم تنزيله هو نفسه الذي تنوي تنزيله.
قد تتساءل عن مكان الاستخدام الحقيقي في هذا النوع من التحقق. ضع في اعتبارك سيناريو تعرف فيه المجموع الاختباري SHA-1 لملف من موقع الويب الخاص بالمطور ، ولكنك تريد تنزيل الإصدار نفسه من موقع ويب مختلف. يمكنك بعد ذلك إنشاء المجموع الاختباري SHA-1 للتنزيل ومقارنته بالمجموع الاختباري الأصلي من صفحة تنزيل المطور.
إذا كان الاثنان مختلفين ، فهذا لا يعني فقط أن محتويات الملف ليست متطابقة ، ولكن قد يكون هناك برامج ضارة مخفية في الملف ، فقد تتلف البيانات وتتسبب في تلف ملفات الكمبيوتر ، فالملف ليس كذلك أي شيء متعلق بالملف الحقيقي ، إلخ.
ومع ذلك ، قد يعني ذلك أيضًا أن أحد الملفات يمثل إصدارًا أقدم من البرنامج عن الآخر ، نظرًا لأنه حتى هذا التغيير القليل سيولد قيمة مجموع اختباري فريدة.
قد ترغب أيضًا في التحقق من تطابق الملفين إذا كنت تقوم بتثبيت حزمة خدمة أو بعض البرامج الأخرى أو التحديث نظرًا لحدوث مشكلات في حالة فقد بعض الملفات أثناء التثبيت.
SHA-1 حاسبات المجموع الاختباري
يمكن استخدام نوع خاص من الآلة الحاسبة لتحديد المجموع الاختباري لملف أو مجموعة من الأحرف.
على سبيل المثال ، SHA1 Online و SHA1 Hash Generator عبارة عن أدوات مجانية عبر الإنترنت يمكنها إنشاء المجموع الاختباري SHA-1 لأي مجموعة من النصوص و / أو الرموز و / أو الأرقام.
ستقوم هذه المواقع ، على سبيل المثال ، بإنشاء هذا الزوج:
pAssw0rd!
bd17dabf6fdd24dab5ed0e2e6624d312e4ebeaba