البرمجيات

وظيفة تجزئة التشفير

مؤلف: Judy Howell
تاريخ الخلق: 2 تموز 2021
تاريخ التحديث: 13 قد 2024
Anonim
Encryption & Hashing what is the difference | الفرق بين التشفير و دالة التجزئه وما هي استخداماتهم
فيديو: Encryption & Hashing what is the difference | الفرق بين التشفير و دالة التجزئه وما هي استخداماتهم

المحتوى

استخدم وظيفة تجزئة التشفير للتحقق من صحة البيانات

وظيفة تجزئة التشفير هي خوارزمية يمكن تشغيلها على بيانات مثل ملف فردي أو كلمة مرور لإنتاج قيمة تسمى المجموع الاختباري.

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

تتضمن بعض وظائف تجزئة التشفير شائعة الاستخدام MD5 و SHA-1 ، على الرغم من وجود العديد من الوظائف الأخرى أيضًا.

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

وظائف تجزئة التشفير: حالة استخدام

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


باستخدام حاسبة المجموع الاختباري ، يمكنك حساب المجموع الاختباري باستخدام وظيفة تجزئة تشفير معينة ، مثل SHA-2 ، ثم مقارنتها مع تلك المنشورة على موقع Mozilla. إذا كانا متساويين ، يمكنك التأكد بشكل معقول من أن التنزيل لديك هو الذي تنوي موزيلا امتلاكه.

هل يمكن عكس وظائف تجزئة التشفير؟

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


قد يستخدم المتسللون جدول قوس قزح لمعرفة النص العادي للمجموع الاختباري. جداول قوس قزح هي قواميس تسرد الآلاف أو الملايين أو حتى مليارات الاختبارية جنبًا إلى جنب مع قيمة النص العادي المقابل.

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

إليك نسخة مبسطة من جدول قوس قزح لتوضيح كيف يعمل المرء عند استخدام وظيفة التجزئة التشفير SHA-1:

مثال على جدول قوس قزح
نص عادي المجموع الاختباري SHA-1
12345 8cb2237d0679ca88db6464eac60da96345513964
كلمة المرور 1 e38ad214943daad1d64c102faec29de4afe9da3d
أنا أحب كلبي a25fb3505406c9ac761c8428692fbf5d5ddf1316
جيني 400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
دالاس 1984 c1ebe6d80f4c7c087ad29d2c0dc3e059fc919da2

يجب أن يعرف المخترق خوارزمية تجزئة التشفير التي تم استخدامها لإنشاء المجموع الاختباري لمعرفة القيم.


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

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

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

كلمات المرور ووظائف تجزئة التشفير

تقوم قاعدة البيانات بحفظ كلمات مرور المستخدم بطريقة مشابهة لجدول قوس قزح. عند إدخال كلمة المرور الخاصة بك ، يتم إنشاء المجموع الاختباري ومقارنته بالكلمة المسجلة مع اسم المستخدم الخاص بك. ثم يتم منحك إذن الوصول إذا كانا متطابقين.

نظرًا لأن وظيفة تجزئة التشفير تنتج مجموعًا غير قابل للعكس ، فهل من الآمن أن تجعل كلمة المرور الخاصة بك بسيطة مثل 12345، بدلا من 12@34$5، ببساطة لأنه لا يمكن فهم الاختباريين أنفسهم؟ لا ، وإليك السبب.

من المستحيل فك تشفير كلمتين المرور هاتين بمجرد النظر إلى المجموع الاختباري فقط:

MD5 لـ 12345: 827ccb0eea8a706c4c34a16891f84e7b

MD5 مقابل 12 @ 34 $ 5: a4d3cc004f487b18b2ccd4853053818b

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

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

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

مزيد من المعلومات حول وظائف تجزئة التشفير

قد يبدو أن وظائف تجزئة التشفير مرتبطة بالتشفير ، لكن الاثنين يعملان بطرق مختلفة.

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

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

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

يمكن أن يحدث تضارب لأن كل وظيفة تجزئة تشفير تنتج قيمة بطول ثابت بغض النظر عن بيانات الإدخال. على سبيل المثال ، تولد وظيفة تجزئة MD5 827ccb0eea8a706c4c34a16891f84e7b و ​​1 f633b2909b9c1addf32302c7a497983 و e10adc3949ba59abbe56e057f20f883e لثلاث كتل مختلفة تمامًا من البيانات.

المجموع الاختباري الأول من 12345. تم إنشاء الثاني من أكثر من 700 حرفًا ورقمًا ، والثالث من 123456. جميع المدخلات الثلاثة ذات أطوال مختلفة ، ولكن النتائج دائمًا ما تكون 32 حرفًا فقط منذ استخدام المجموع الاختباري MD5.

لا يوجد حد لعدد المجموع الاختباري الذي يمكن إنشاؤه لأنه من المفترض أن ينتج عن كل تغيير طفيف في الإدخال مجموعًا مختلفًا تمامًا. نظرًا لوجود عدد محدد من الاختبارية التي يمكن أن تنتجها وظيفة تجزئة تشفير واحدة ، فهناك دائمًا احتمال أن تواجه تصادمًا.

هذا هو السبب في إنشاء وظائف تجزئة التشفير الأخرى. بينما تقوم MD5 بإنشاء قيمة مكونة من 32 حرفًا ، تقوم SHA-1 بتوليد 40 حرفًا بينما تقوم SHA-2 (512) بإنشاء 128 حرفًا. وكلما زاد عدد الأحرف في المجموع الاختباري ، قل احتمال حدوث تصادم.

الوظائف الرائعة

شعبية على الموقع

كيفية استعادة البرامج الثابتة على جهاز Mac الخاص بك القائم على Intel باستخدام قرص مضغوط
Tehnologies

كيفية استعادة البرامج الثابتة على جهاز Mac الخاص بك القائم على Intel باستخدام قرص مضغوط

تنطبق عملية استعادة البرامج الثابتة على بعض أجهزة Mac القديمة المستندة إلى Intel والمجهزة بمحركات أقراص CD / DVD مضمنة. استعادة البرامج الثابتة لنظام التشغيل Mac هي عملية إعادة تعيين البرامج الثابتة ...
ما هو برنامج بيتا؟
البرمجيات

ما هو برنامج بيتا؟

بيتا يشير إلى المرحلة في تطوير البرمجيات بين ألفا المرحلة و الافراج عن مرشح مرحلة. يعتبر برنامج Beta بشكل عام "كاملًا" من قبل المطور ولكنه لا يزال غير جاهز للاستخدام العام بسبب عدم وجود اخت...