أدوات المطورين · SHA حاسبة التجزئة
التجزئة ليست تشفيرًا: لماذا لا يمكن فك تشفير SHA-256 التجزئة
· لماذا يهم
التشفير حماية ترميز
لا يوجد مفتاح ولا معكوس: التجزئة هي دالة ذات اتجاه واحد. يشرح هذا المنشور الفرق عن التشفير، ولماذا يبدو أن مواقع البحث عن التجزئة تعمل على عكس التجزئة، وما يعنيه ذلك بالنسبة لتجزئة البيانات الشخصية.
يرجى فك تشفير هذه التجزئة - التذكرة التي تكشف عن سوء فهم حول ماهية التجزئة
تصل تذكرة دعم تطلب فك تشفير بعض التجزئات SHA-256. يشتبه المطور الذي يقرأها في وجود سوء فهم حول ماهية التجزئة. هذا الارتباك منطقي، فكل من التجزئة والتشفير يتضمنان خوارزميات تشفير، وكلاهما ينتج مخرجات تبدو مشوشة، وكلاهما ذو صلة بالأمان. لكنها أدوات مختلفة بشكل أساسي. التشفير قابل للعكس؛ التجزئة ليست كذلك. وهذا التمييز مهم بدرجة كافية لدرجة أن إرباكهم قد أدى إلى كسر أنظمة الأمان الحقيقية. تمثل التذكرة فجوة شائعة في الفهم تؤثر على تصميم النظام.
دالة التجزئة هي دالة أحادية الاتجاه. يمكنك تجزئة أحد المدخلات للحصول على ملخص، ولكن لا يوجد مفتاح ولا عملية عكسية تستعيد المدخلات من الملخص. هذا ليس قيدًا أو خطأ؛ إنها الخاصية المميزة للتجزئة. تنتج حاسبة التجزئة ToolAcre SHA ملخصات للنص الذي تلصقه، ولا يوجد زر "فك تشفير" لأنه لا يمكن وجود أي زر. العملية لا رجعة فيها عن طريق الرياضيات، وليس عن طريق الاختيار. إن عدم وجود وظيفة عكسية ليس ميزة يمكنك طلبها.
التشفير له مفتاح وعكس؛ التجزئة لا تحتوي على أي منهما — الفرق التعريفي بعبارات واضحة
التشفير يعمل بشكل مختلف. تأخذ خوارزمية التشفير نصًا عاديًا ومفتاحًا، وتنتج نصًا مشفرًا. النص المشفر مشوش وغير قابل للقراءة بدون المفتاح. والأهم من ذلك، أن نفس المفتاح يمكنه فك تشفير النص المشفر وإعادته إلى نص عادي. التشفير قابل للعكس حسب التصميم. تقوم بالتشفير للحفاظ على سرية البيانات؛ قمت بفك تشفيرها لقراءتها مرة أخرى. يعتمد أمان التشفير على كون المفتاح سريًا. يمكن لحامل المفتاح فقط عكس التحويل.
التجزئة ليس لها مفتاح ولا عكس. يمكنك تجزئة شيء ما لإنتاج ملخص ثابت الطول. نفس المدخلات تنتج دائمًا نفس الملخص. يُنتج مُدخل مختلف مُلخصًا مختلفًا، وهو خاصية مقاومة الاصطدام. لكن لا يمكنك أخذ ملخص وإنتاج مدخلات. الوظيفة تسير في اتجاه واحد فقط. إذا كنت بحاجة إلى تشفير البيانات حتى تتمكن من فك تشفيرها لاحقًا، فإن التجزئة هي الأداة الخاطئة. إذا كنت بحاجة إلى بصمة بيانات للتحقق أو معالجة المحتوى، فإن التجزئة صحيحة. يتطلب اختيار الأداة المناسبة فهم الفرق.
كيف تعمل مواقع البحث عن التجزئة - قواميس محسوبة مسبقًا للمدخلات الشائعة، وليس فك التشفير
هذا التمييز مهم للغاية لأنه يشكل أساس أمان التحقق من كلمة المرور. الخادم لا يخزن كلمات المرور. يقوم بتخزين نتيجة تجزئة كلمة المرور. عندما يقوم المستخدم بتسجيل الدخول، يقوم الخادم بتجزئة إرساله ومقارنته بالقيمة المخزنة. إذا تم اختراق الخادم وسرقة قاعدة البيانات الخاصة به، فلن يحصل المهاجم على كلمات المرور نفسها، بل فقط التجزئات. تعني طبيعة التجزئة ذات الاتجاه الواحد أن المهاجم لا يمكنه إجراء هندسة عكسية لكلمات المرور من التجزئة. يعتمد أمان النظام على هذه الخاصية.
إذا استخدم الخادم التشفير بدلاً من ذلك - إذا قام بتشفير كلمات المرور وتمكن من فك تشفيرها - فإن التسوية التي تسرق المفتاح ستكشف على الفور كل كلمة مرور. يتم اختيار التجزئة على وجه التحديد لأنه لا رجعة فيه. ولهذا السبب تستخدم أنظمة كلمات المرور التجزئة، وليس التشفير. اللارجعة ليست قيدا. إنه نموذج الأمان بأكمله. تعد قاعدة بيانات كلمات المرور المشفرة أضعف بشكل أساسي من قاعدة بيانات مجزأة لأن التشفير قابل للعكس.
تمثل المدخلات ذات الإنتروبيا المنخفضة نقطة الضعف - لماذا توفر تجزئة عنوان البريد الإلكتروني أو رقم الهاتف أو PIN حماية قليلة
توجد مواقع البحث عن التجزئة لخلق وهم فك التشفير. تستضيف هذه المواقع جداول محسوبة مسبقًا للمدخلات الشائعة وتجزئةها. "جداول قوس قزح" عبارة عن قواميس معدة مسبقًا: قد يحتوي الجدول على تجزئات لآلاف كلمات المرور الأكثر شيوعًا، أو جميع المجموعات الأبجدية الرقمية حتى طول معين، أو قوائم كلمات كاملة بلغات متعددة. لقد قام مشغل الموقع بالفعل بعمل التجزئة وقام بتخزين النتائج. عندما يرسل شخص ما تجزئة إلى موقع بحث، لا يقوم الموقع بفك تشفير أي شيء. إنه ببساطة يبحث عن التجزئة في طاولته. إذا كانت التجزئة موجودة - في حالة تطابق بعض كلمات القاموس أو نمط كلمة المرور - فسيقوم الجدول بإرجاع الإدخال الأصلي. يبدو هذا وكأنه فك تشفير سحري لشخص غير مطلع على هذه التقنية، ولكنه مجرد بحث في قاعدة البيانات. الموقع لا يقوم بعكس التجزئة؛ يتم مقارنتها بالقيم المحسوبة مسبقًا.
مثال عملي - تجزئة قيمة يمكن تخمينها وإظهار كيف يمكن للقاموس استعادتها، مقابل قيمة عشوائية طويلة لا يمكنه استعادتها
وهذا هو السبب في أن المدخلات ذات الإنتروبيا المنخفضة معرضة للخطر. إذا قمت بتجزئة كلمة مرور شائعة مثل "كلمة المرور" أو قيمة يمكن التنبؤ بها مثل عنوان البريد الإلكتروني لشخص ما، فهناك احتمال معقول أن يكون موقع البحث قد قام بالفعل بحساب تلك التجزئة وتخزينها. يقوم البحث بإرجاع القيمة الأصلية على الفور. إذا قمت بتجزئة سلسلة عشوائية مكونة من 256 من الأحرف، فلن يتم حساب هذا التجزئة مسبقًا في أي موقع بحث على وجه الأرض. موقع البحث لا يُرجع أي شيء، لأن الإدخال لم يكن موجودًا في قاموسهم. يعتمد أمان التجزئة كليًا على إنتروبيا الإدخال.
توضح حاسبة التجزئة ToolAcre SHA ذلك بشكل مباشر. قم بتجزئة كلمة شائعة، ويمكن للمهاجم المصمم البحث عنها إذا قام بتشغيل خدمة القاموس الخاصة به. تجزئة قيمة عشوائية طويلة، وحتى القاموس الضخم من غير المرجح أن يحتوي عليها. إن حتمية التجزئة - المدخلات المتماثلة تعطي مخرجات متطابقة - هي ما يجعل هجمات القاموس ممكنة. وهو أيضًا ما يجعل التجزئة مفيدة للتحقق. نفس الخاصية التي تمكن البحث تمكن أيضًا من التحقق.
عندما تريد التشفير فعليًا - الحالات التي يجب أن تعود فيها البيانات، وحيث تكون التجزئة هي الأداة الخاطئة
عندما تريد التشفير فعليًا - عندما تحتاج إلى إرسال بيانات سرية واستعادتها لاحقًا - فإن التشفير هو الأداة الصحيحة. AES هو المعيار الحديث للتشفير المتماثل: تتم مشاركة مفتاح واحد، وهو يقوم بتشفير النص العادي وفك تشفير النص المشفر. يتم استخدام RSA أو التشفير ذو المنحنى الإهليلجي للتشفير غير المتماثل: يتم تشفير المفتاح العام وفك التشفير بالمفتاح الخاص. هذه الأدوات قابلة للعكس حسب التصميم. الأمن يأتي من السرية الرئيسية، وليس من اللارجعة. الخطأ هو استخدام التجزئة حيث يكون التشفير مطلوبًا. إذا قمت بتجزئة رقم بطاقة الائتمان بهدف التحقق منه لاحقًا، فليس لديك طريقة لفك تشفيره. إذا قمت بتجزئة معرف شخصي واحتجت لاحقًا إلى استعادته، فإن التجزئة كانت خيارًا خاطئًا. هذه هي المواقف التي تتطلب التشفير.
مثال عملي يفصل بين الاستخدامين بوضوح. لديك قائمة بمعرفات المستخدمين التي يجب أن تظل سرية عن بعضها البعض وعن موظفيك. يمكنك تشفيرها باستخدام AES وتخزين النتيجة. لاحقًا، عندما تحتاج إلى البحث عن مستخدم، يمكنك فك تشفيره وقراءته. التجزئة لن تعمل. بمجرد تجزئتها، يتم فقدان المعرفات إلى الأبد. وفي المقابل، لديك كلمات مرور المستخدم. يمكنك تجزئتها وتخزينها. عندما يقوم المستخدم بتسجيل الدخول، تقوم بتجزئة إرساله ومقارنته بالقيمة المخزنة. لن تحتاج أبدًا إلى استعادة كلمات المرور نفسها. سيكون التشفير خاطئًا؛ لن يكون لديك أي استخدام لكلمات مرور النص العادي بعد الإعداد الأولي.
ما لا يغطيه هذا هو تصميمات التجزئة ذات المفاتيح والمملحة، والتي ترفع المستوى ولكنها موضوع منفصل
يستحق التمليح والتجزئة ذات المفاتيح معالجة منفصلة لأن أياً منهما لا يحول الملخص إلى تشفير. يجعل الملح مدخلات متساوية منخفضة الإنتروبيا تنتج سجلات مخزنة مختلفة، ويمكن للمفتاح تقييد من يحسب قيمة مصادقة صالحة. يبقى الإخراج غير قابل للعكس؛ لا تزال محاولات الاسترداد مستمرة من خلال اختبار المدخلات المرشحة بدلاً من تطبيق العكس.
تضيف تجزئة كلمة المرور تكلفة متعمدة بالإضافة إلى الملح، بينما يقوم HMAC بمصادقة الرسائل باستخدام مفتاح سري. ToolAcre لا ينفذ أيًا من العمليتين. يؤدي إبقائها خارج هذه المقالة إلى تجنب الاختصار الخطير المتمثل في وصف SHA-256 العادي بالإضافة إلى بادئة مرتجلة كمكافئ لسجل كلمة المرور التي تمت مراجعتها أو إنشاء مصادقة الرسالة.
الوجبات الجاهزة: طريقة واحدة فقط - تقوم حاسبة التجزئة ToolAcre SHA بحساب الملخصات؛ لا يوجد زر عكسي لأنه لا يمكن وجود أي منها
تعرض حاسبة التجزئة ToolAcre SHA عملية التجزئة: الصق النص، واحصل على ملخص، وانتهى الأمر. لا يوجد أي عكس ممكن أو مقصود. ترفض الأداة بشكل صحيح توفير وظيفة "فك التشفير"، لأنه لا يمكن وجودها. إذا كنت بحاجة إلى التشفير، استخدم التشفير المناسب. إن غياب الانعكاس لا يشكل قيدا على الأداة؛ إنها حقيقة رياضية حول التجزئة. تعد الوظائف ذات الاتجاه الواحد أدوات قوية على وجه التحديد لأنه لا يمكن عكسها. إنهم يرتكبون البيانات بطريقة لا يمكن استرجاعها. أنها توفر التحقق دون الكشف عن الأصل. إنها تمكن أنظمة كلمات المرور الآمنة حتى في حالة سرقة قاعدة البيانات. يصبح من غير الممكن عكس تجزئات كلمة المرور المملحة والمضبوطة بشكل صحيح من خلال التخمين. اللارجعة هي آلية الأمن.
تقوم حاسبة التجزئة ToolAcre SHA بحساب الملخصات ذات الاتجاه الواحد والهادفة، والتي يتم حسابها بشكل صحيح من خلال تطبيق Web Crypto الخاص بالمتصفح. إذا كنت بحاجة إلى التجزئة للتحقق أو التكامل، فاستخدمها. إذا كنت بحاجة إلى الحفاظ على سرية البيانات واسترجاعها لاحقًا، فإن التشفير هو أداتك. يعد فهم الفرق بين التجزئة التي لا رجعة فيها والتشفير القابل للعكس أمرًا أساسيًا للأمان ولبناء الأنظمة التي تفعل ما تحتاجه بالفعل.