SHA-2
SHA-2 ( خوارزمية التجزئة الآمنة 2 ) هي مجموعة من وظائف التجزئة المشفرة التي صممتها وكالة الأمن القومي الأمريكية (NSA) ونُشرت لأول مرة في عام 2001. [ 3 ] [ 4 ] يتم بناؤها باستخدام بنية Merkle-Damgård ، من وظيفة ضغط أحادية الاتجاه مبنية باستخدام بنية Davies-Meyer من تشفير كتلة متخصص.
يتضمن SHA-2 تغييرات جوهرية عن سابقه SHA-1 . تتألف عائلة SHA-2 من ست دوال تجزئة ذات قيم تجزئة (ملخصات) بأطوال 224، 256، 384، أو 512 بت: [ 5 ] SHA-224، SHA-256، SHA-384، SHA-512، SHA-512/224، SHA-512/256 . SHA-256 وSHA-512 دالتان تجزئة بقيم تجزئة ثمانية، كل منهما مكونة من ثماني كلمات، طول كل منها 32 بت و64 بت على التوالي. تستخدمان قيم إزاحة وثوابت جمع مختلفة، لكن بنيتهما متطابقة تقريبًا، ولا يختلفان إلا في عدد الجولات. أما SHA-224 وSHA-384 فهما نسختان مختصرتان من SHA-256 وSHA-512 على التوالي، ويتم حسابهما بقيم ابتدائية مختلفة. SHA-512/224 و SHA-512/256 هما أيضًا إصدارات مختصرة من SHA-512، ولكن يتم إنشاء القيم الأولية باستخدام الطريقة الموضحة في معايير معالجة المعلومات الفيدرالية (FIPS) PUB 180-4.
نُشرت خوارزمية SHA-2 لأول مرة من قِبل المعهد الوطني للمعايير والتكنولوجيا (NIST) كمعيار فيدرالي أمريكي. وتملك الولايات المتحدة براءة اختراع لعائلة خوارزميات SHA-2 [ 6 ]. وقد منحت الولايات المتحدة براءة الاختراع بموجب ترخيص مجاني . [ 5 ]
اعتبارًا من عام 2024، لا تزال دالة التجزئة المشفرة SHA-2 آمنة ضد الهجمات المعروفة، بما في ذلك تلك التي تأتي من أجهزة الكمبيوتر الكمومية . [ 7 ]
معيار التجزئة

مع نشر معيار FIPS PUB 180-2، أضاف المعهد الوطني للمعايير والتكنولوجيا (NIST) ثلاث دوال تجزئة إضافية إلى عائلة SHA. تُعرف هذه الخوارزميات مجتمعةً باسم SHA-2، نسبةً إلى أطوال التجزئة (بالبتات): SHA-256 وSHA-384 وSHA-512.
نُشرت الخوارزميات لأول مرة عام 2001 في مسودة FIPS PUB 180-2، حيث قُبلت حينها المراجعات والتعليقات العامة. وفي أغسطس 2002، أصبح FIPS PUB 180-2 معيار التجزئة الآمنة الجديد ، ليحل محل FIPS PUB 180-1 الذي صدر في أبريل 1995. وتضمن المعيار المُحدَّث خوارزمية SHA-1 الأصلية، مع تدوين تقني مُحدَّث يتوافق مع وصف آلية عمل عائلة SHA-2. [ 4 ]
في فبراير 2004، نُشر إشعار تغيير لمعيار FIPS PUB 180-2، يُحدد متغيرًا إضافيًا، وهو SHA-224، مُعرّفًا ليُطابق طول مفتاح خوارزمية التشفير الثلاثي DES ثنائية المفاتيح . [ 8 ] في أكتوبر 2008، تم تحديث المعيار في FIPS PUB 180-3، ليشمل SHA-224 من إشعار التغيير، دون إجراء أي تغييرات جوهرية أخرى على المعيار. كان الدافع الرئيسي لتحديث المعيار هو نقل معلومات الأمان المتعلقة بخوارزميات التجزئة وتوصيات استخدامها إلى المنشورات الخاصة 800-107 و800-57. [ 9 ] [ 10 ] [ 11 ] كما تم حذف بيانات الاختبار التفصيلية وملخصات الرسائل النموذجية من المعيار، وتوفيرها كوثائق منفصلة. [ 12 ]
في يناير 2011، نشر المعهد الوطني للمعايير والتكنولوجيا (NIST) المعيار SP800-131A، الذي حدد الانتقال من الحد الأدنى الحالي آنذاك وهو 80 بت من الأمان (المُقدم بواسطة SHA-1) المسموح به للاستخدام الحكومي الفيدرالي حتى نهاية عام 2013، إلى 112 بت من الأمان (المُقدم بواسطة SHA-2) باعتباره الحد الأدنى المطلوب (بدءًا من عام 2014) ومستوى الأمان الموصى به (بدءًا من تاريخ النشر في عام 2011). [ 13 ]
في مارس 2012، تم تحديث المعيار في FIPS PUB 180-4، بإضافة دالتي التجزئة SHA-512/224 وSHA-512/256، ووصف طريقة لتوليد القيم الأولية للإصدارات المختصرة من SHA-512. بالإضافة إلى ذلك، أُزيل قيدٌ على إضافة حشو إلى بيانات الإدخال قبل حساب التجزئة، مما يسمح بحساب بيانات التجزئة بالتزامن مع توليد المحتوى، مثل بث الفيديو أو الصوت في الوقت الفعلي. مع ذلك، لا يزال يتعين إضافة حشو إلى كتلة البيانات الأخيرة قبل إخراج التجزئة. [ 14 ]
في يوليو 2012، نقّح المعهد الوطني للمعايير والتكنولوجيا (NIST) معيار SP800-57، الذي يُقدّم إرشادات لإدارة مفاتيح التشفير. وقد حظر هذا المعيار إنشاء التوقيعات الرقمية ذات أمان التجزئة الأقل من 112 بت بعد عام 2013. وكانت النسخة السابقة الصادرة عام 2007 قد حددت نهاية عام 2010 كموعد نهائي. [ 11 ] وفي أغسطس 2012، نقّح المعهد معيار SP800-107 بنفس الطريقة. [ 10 ]
في مارس 2023، أعلن المعهد الوطني للمعايير والتكنولوجيا (NIST) قراره بمراجعة معيار FIPS 180-4. [ 15 ] سيزيل معيار FIPS 180-5 مواصفات SHA-1، ويضيف إرشادات من SP 800-107، ويتضمن تحديثات تحريرية.
اختارت مسابقة دالة التجزئة NIST دالة تجزئة جديدة، SHA-3 ، في عام 2012. [ 16 ] خوارزمية SHA-3 ليست مشتقة من SHA-2.
التطبيقات
تُستخدم دالة التجزئة SHA-2 في بعض تطبيقات وبروتوكولات الأمان الشائعة، بما في ذلك TLS و SSL و PGP و SSH و S/MIME و IPsec . وقد دفع الطلب الحسابي الكبير لخوارزميات SHA-2 إلى اقتراح حلول أكثر كفاءة، مثل تلك القائمة على مُسرّعات الأجهزة المُخصصة للدوائر المتكاملة (ASICs). [ 17 ]
يُستخدم SHA-256 للتحقق من صحة حزم برامج دبيان [ 18 ] وفي معيار توقيع الرسائل DKIM ؛ بينما يُعد SHA-512 جزءًا من نظام للتحقق من صحة مقاطع الفيديو الأرشيفية من المحكمة الجنائية الدولية لإبادة رواندا . [ 19 ] ويُستخدم كل من SHA-256 وSHA-512 في DNSSEC . [ 20 ] وتستخدم توزيعات لينكس عادةً SHA-2 ذو 512 بت لتشفير كلمات المرور بشكل آمن. [ 21 ] [ 22 ]
تستخدم العديد من العملات المشفرة ، بما في ذلك البيتكوين ، خوارزمية SHA-256 للتحقق من المعاملات وحساب إثبات العمل [ 23 ] أو إثبات الحصة . [ 24 ] وقد أدى ظهور رقائق مسرعات ASIC SHA-2 إلى استخدام مخططات إثبات العمل القائمة على خوارزمية scrypt .
في شبكات الجيل الرابع والخامس للهواتف المحمولة، تُستخدم خوارزمية HMAC-SHA-256 كدالة اشتقاق مفاتيح (KDF) لتوليد مفاتيح التشفير الضرورية لتأمين الاتصالات. وقد تم تحديد هذه العملية في المواصفات الفنية لمشروع شراكة الجيل الثالث (3GPP) TS 33.401 [ 25 ] وTS 33.501 [ 26 ]، والتي تُبين بنية الأمان وإجراءاته لهذه الشبكات.
تُعدّ خوارزميات SHA-1 وSHA-2 وSHA-3 خوارزميات التجزئة الآمنة المطلوبة قانونًا للاستخدام في تطبيقات حكومية أمريكية مُحددة ، بما في ذلك استخدامها ضمن خوارزميات وبروتوكولات تشفير أخرى، لحماية المعلومات الحساسة غير المصنفة. كما شجع منشور FIPS رقم 180-1 على اعتماد واستخدام SHA-1 من قِبل المؤسسات الخاصة والتجارية. ويجري حاليًا إيقاف استخدام SHA-1 في معظم التطبيقات الحكومية؛ إذ يقول المعهد الوطني الأمريكي للمعايير والتكنولوجيا (NIST): "يوصي المعهد الوطني للمعايير والتكنولوجيا (NIST) بأن تنتقل الوكالات الفيدرالية من استخدام SHA-1 في جميع التطبيقات في أسرع وقت ممكن. وينبغي للوكالات الفيدرالية استخدام SHA-2 أو SHA-3 كبديل لـ SHA-1". [ 27 ] وكان يُؤمل أن يُسهم توجيه المعهد الوطني للمعايير والتكنولوجيا (NIST) للوكالات الحكومية الأمريكية، والذي يُوصيها، بالتوقف عن استخدام SHA-1 بعد عام 2010، [ 28 ] في تسريع عملية الانتقال من SHA-1.
لم تُعتمد وظائف SHA-2 بسرعة في البداية، على الرغم من تفوقها الأمني على SHA-1. قد تشمل الأسباب عدم دعم SHA-2 على الأنظمة التي تعمل بنظام Windows XP SP2 أو الإصدارات الأقدم [ 29 ] ، وعدم وجود شعور بالإلحاح نظرًا لعدم اكتشاف تصادمات SHA-1 آنذاك. أعلن فريق Google Chrome عن خطة لجعل متصفحهم يتوقف تدريجيًا عن قبول شهادات TLS المعتمدة على SHA-1 خلال الفترة من أواخر عام 2014 إلى أوائل عام 2015. [ 30 ] [ 31 ] [ 32 ] وبالمثل، أعلنت Microsoft [ 33 ] أن Internet Explorer و Edge [الإصدار القديم] سيتوقفان عن قبول شهادات TLS العامة الموقعة باستخدام SHA-1 بدءًا من فبراير 2017. عطلت Mozilla خاصية SHA-1 في Firefox خلال أوائل يناير 2016، لكنها اضطرت إلى إعادة تفعيلها مؤقتًا عبر تحديث، بعد مشاكل في واجهات المستخدم المستندة إلى الويب لبعض طرازات أجهزة التوجيه وأجهزة الأمان . [ 34 ]
تحليل الشفرات والتحقق منها
بالنسبة لدالة تجزئة يكون فيها L عدد البتات في ملخص الرسالة ، يمكن دائمًا إيجاد رسالة مطابقة لملخص رسالة معين باستخدام البحث الشامل في 2L عملية تقييم. يُسمى هذا هجوم الصورة المسبقة ، وقد يكون عمليًا أو غير عملي اعتمادًا على قيمة L وبيئة الحوسبة المستخدمة. أما المعيار الثاني، وهو إيجاد رسالتين مختلفتين تُنتجان نفس ملخص الرسالة، والمعروف بالتصادم ، فيتطلب في المتوسط 2L /2 عملية تقييم فقط باستخدام هجوم عيد الميلاد .
بعض التطبيقات التي تستخدم التشفير التجزئي، مثل تطبيقات تخزين كلمات المرور، لا تتأثر إلا بشكل طفيف بهجوم التصادم . يتطلب إنشاء كلمة مرور صالحة لحساب معين هجومًا مسبقًا للصورة، بالإضافة إلى الوصول إلى تجزئة كلمة المرور الأصلية (الموجودة عادةً في الملف shadow)، وهو أمر قد يكون سهلًا أو صعبًا. لا تسمح هذه الهجمات بعكس تشفير كلمة المرور (مثلًا، للحصول على كلمة مرور لتجربتها على حساب مستخدم آخر). (مع ذلك، حتى تجزئة كلمة المرور الآمنة لا تستطيع منع هجمات القوة الغاشمة على كلمات المرور الضعيفة ).
في حالة توقيع المستندات، لا يستطيع المهاجم ببساطة تزوير توقيع مستند موجود، بل عليه إعداد مستندين، أحدهما بريء والآخر ضار، وحثّ حامل المفتاح الخاص على توقيع المستند البريء. توجد ظروف عملية تسمح بذلك؛ فقبل نهاية عام ٢٠٠٨، كان من الممكن إنشاء شهادات SSL مزورة باستخدام تصادم MD5 ، والتي كانت مقبولة لدى متصفحات الويب الشائعة. [ ٣٥ ]
أدى ازدياد الاهتمام بتحليل التشفير التجزئي خلال مسابقة SHA-3 إلى ظهور العديد من الهجمات الجديدة على عائلة SHA-2، وأفضلها مُبين في الجدول أدناه. الهجمات المتعلقة بالتصادم فقط هي ذات تعقيد عملي؛ ولا تمتد أي من الهجمات إلى دالة التجزئة الكاملة.
في مؤتمر FSE 2012، قدم باحثون في شركة سوني عرضًا تقديميًا يشير إلى إمكانية توسيع نطاق هجمات التصادم الزائف إلى 52 جولة على خوارزمية SHA-256 و57 جولة على خوارزمية SHA-512 من خلال البناء على هجوم الصورة المسبقة الزائفة ثنائية الزمرة . [ 36 ]
| نُشر في | سنة | أسلوب الهجوم | هجوم | متغير | جولات | تعقيد |
|---|---|---|---|---|---|---|
| هجمات تصادم جديدة ضد SHA-2 حتى 24 خطوة [ 37 ] [ 38 ] | 2008 | التفاضلي | تصادم | SHA-256 | 24/64 | 2 15.5 |
| SHA-512 | 24/80 | 2 22.5 | ||||
| الصور الأولية لـ SHA-2 المخفضة الخطوة [ 39 ] | 2009 | الالتقاء في المنتصف | الصورة الأصلية | SHA-256 | 42/64 | 2251.7 |
| 43/64 | 2254.9 | |||||
| SHA-512 | 42/80 | 2 502.3 | ||||
| 46/80 | 2 511.5 | |||||
| هجمات متقدمة على الصور المسبقة من نوع "اللقاء في المنتصف" [ 40 ] | 2010 | الالتقاء في المنتصف | الصورة الأصلية | SHA-256 | 42/64 | 2248.4 |
| SHA-512 | 42/80 | 2494.6 | ||||
| هجوم تفاضلي من الدرجة العليا على SHA-256 المختزل [ 2 ] | 2011 | التفاضلي | تصادم زائف | SHA-256 | 46/64 | 2 178 |
| 33/64 | 2 46 | |||||
| Bicliques for Preimages: Attacks on Skein-512 and the SHA-2 family [ 1 ] | 2011 | بيكاليك | الصورة الأصلية | SHA-256 | 45/64 | 2255.5 |
| SHA-512 | 50/80 | 2 511.5 | ||||
| صورة عكسية زائفة | SHA-256 | 52/64 | 2 255 | |||
| SHA-512 | 57/80 | 2 511 | ||||
| تحسين التصادمات المحلية: هجمات جديدة على SHA-256 المخفضة [ 41 ] | 2013 | التفاضلي | تصادم | SHA-256 | 31/64 | 2 65.5 |
| تصادم زائف | SHA-256 | 38/64 | 2 37 | |||
| الطرق الاستدلالية المتفرعة في البحث التصادمي التفاضلي مع تطبيقات على SHA-512 [ 42 ] | 2014 | التفاضل الاستدلالي | تصادم زائف | SHA-512 | 38/80 | 2 40.5 |
| تحليل SHA-512/224 و SHA-512/256 [ 43 ] | 2016 | التفاضلي | تصادم | SHA-256 | 28/64 | عملي |
| SHA-512 | 27/80 | عملي | ||||
| تصادم زائف | SHA-512 | 39/80 | عملي | |||
| أرقام قياسية جديدة في هجمات التصادم على SHA-2 [ 44 ] | 2024 | التفاضلي | تصادم | SHA-256 | 31/64 | 2 49.8 |
| SHA-512 | 31/80 | 2 115.6 | ||||
| تصادم زائف | SHA-256 | 39/64 | عملي |
المصادقة الرسمية
يمكن التحقق رسميًا من تطبيقات جميع وظائف الأمان المعتمدة من قبل FIPS من خلال برنامج CMVP ، الذي يُدار بالاشتراك بين المعهد الوطني للمعايير والتكنولوجيا (NIST) وهيئة أمن الاتصالات (CSE). وللتحقق غير الرسمي، تتوفر حزمة لإنشاء عدد كبير من متجهات الاختبار للتنزيل على موقع NIST الإلكتروني؛ إلا أن التحقق الناتج لا يغني عن التحقق الرسمي من CMVP، وهو مطلوب قانونًا [ 45 ] لبعض التطبيقات.
اعتبارًا من ديسمبر 2013 ،يوجد أكثر من 1300 تطبيق معتمد لخوارزمية SHA-256 وأكثر من 900 تطبيق لخوارزمية SHA-512، منها 5 تطبيقات فقط قادرة على معالجة الرسائل التي لا يكون طولها بالبتات من مضاعفات العدد ثمانية مع دعم كلا النوعين. [ 46 ]
متجهات الاختبار
قيم التجزئة لسلسلة نصية فارغة (أي نص إدخال طوله صفر).
SHA224("") 0x d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f SHA256("") 0x e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 SHA384("") 0x 0x cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce 47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e SHA512/224("") 0x 6ed0dd02806fa89e25de060c19d3ac86cabb87d6a0ddd05c333b84f4 SHA512/256("") 0x c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a
حتى تغيير بسيط في الرسالة سيؤدي (باحتمالية كبيرة جدًا) إلى قيمة تجزئة مختلفة، وذلك بسبب تأثير الانهيار . على سبيل المثال، إضافة نقطة في نهاية الجملة التالية تُغير ما يقارب نصف البتات (111 من أصل 224) في قيمة التجزئة، وهو ما يعادل اختيار قيمة تجزئة جديدة عشوائيًا.
SHA224(" The quick brown fox jumps over the lazy dog ") 0x 730e109bd7a8a32b1cb9d9a09aa2325d2430587ddbc0c38bad911525 SHA224(" The quick brown fox jumps over the lazy dog".) 0x 619cba8e8e05826e9b8c519c0a5c68f4fb653e8a3d8aa04bb2c8cd4c
الشفرة الزائفة
فيما يلي الشفرة الزائفة لخوارزمية SHA-256. لاحظ الزيادة الكبيرة في التداخل بين بتات الكلمات مقارنةً بخوارزمية SHA-1.w[16..63]
ملاحظة 1: جميع المتغيرات أعداد صحيحة غير مُوقّعة من 32 بت، ويتم حساب الجمع بتردد 2^ 32. ملاحظة 2: لكل جولة، يوجد ثابت جولة واحد k [ i ] وعنصر واحد في مصفوفة جدولة الرسائل w [ i ] ، حيث 0 ≤ i ≤ 63. ملاحظة 3: تستخدم دالة الضغط 8 متغيرات عاملة، من a إلى h. ملاحظة 4: يُستخدم اصطلاح Big-endian عند التعبير عن الثوابت في هذه الشفرة الزائفة، وعند تحليل بيانات كتلة الرسالة من بايتات إلى كلمات، على سبيل المثال، الكلمة الأولى من رسالة الإدخال "abc" بعد الحشو هي 0x61626380.تهيئة قيم التجزئة: (أول 32 بت من الأجزاء الكسرية للجذور التربيعية لأول 8 أعداد أولية من 2 إلى 19): h0 := 0x6a09e667 h1 := 0xbb67ae85 h2 := 0x3c6ef372 h3 := 0xa54ff53a h4 := 0x510e527f h5 := 0x9b05688c h6 := 0x1f83d9ab h7 := 0x5be0cd19 تهيئة مصفوفة الثوابت الدائرية: (أول 32 بت من الأجزاء الكسرية للجذور التكعيبية لأول 64 عددًا أوليًا من 2 إلى 311): k [ 0..63 ] := 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98، 0x12835b01، 0x243185be، 0x550c7dc3، 0x72be5d74، 0x80deb1fe، 0x9bdc06a7، 0xc19bf174، 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152، 0xa831c66d، 0xb00327c8، 0xbf597fc7، 0xc6e00bf3، 0xd5a79147، 0x06ca6351، 0x14292967، 0x27b70a85، 0x2e1b2138، 0x4d2c6dfc، 0x53380d13، 0x650a7354، 0x766a0abb، 0x81c2c92e، 0x92722c85، 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee، 0x78a5636f، 0x84c87814، 0x8cc70208، 0x90befffa، 0xa4506ceb، 0xbef9a3f7، 0xc67178f2 المعالجة المسبقة (الحشو): ابدأ بالرسالة الأصلية التي يبلغ طولها L بت أضف بتًا واحدًا بقيمة '1' أضف K بتًا من الأصفار، حيث K هو أصغر عدد أكبر من أو يساوي صفرًا بحيث يكون (L + 1 + K + 64) من مضاعفات 512 أضف L كعدد صحيح كبير النهاية 64 بت، مما يجعل الطول الإجمالي بعد المعالجة من مضاعفات 512 بت. بحيث تكون البتات في الرسالة كالتالي: ⟨ الرسالة الأصلية بطول L ⟩ 1 ⟨ K أصفار ⟩ ⟨ L كعدد صحيح 64 بت ⟩ ، (سيكون عدد البتات من مضاعفات 512) قم بمعالجة الرسالة على شكل أجزاء متتالية بحجم 512 بت: قسّم الرسالة إلى أجزاء بحجم 512 بت لكل جزء قم بإنشاء مصفوفة جدولة رسائل مكونة من 64 مدخلاً w [ 0..63 ] من الكلمات ذات 32 بت (القيم الأولية في w [ 0..63 ] لا تهم، لذلك تقوم العديد من التطبيقات بتصفيرها هنا) انسخ الجزء إلى أول 16 كلمة w[0..15] من مصفوفة جدولة الرسائل قم بتوسيع أول 16 كلمة لتشمل الكلمات الـ 48 المتبقية w [ 16..63 ] من مصفوفة جدول الرسائل: من أجل i من 16 إلى 63 s0 := (w [ i-15 ] rightrotate 7) xor (w [ i-15 ] rightrotate 18) xor (w [ i-15 ] rightshift 3) s1 := (w [ i-2 ] rightrotate 17) xor (w [ i-2 ] rightrotate 19) xor (w [ i-2 ] rightshift 10) w [ i ] := w [ i-16 ] + s0 + w [ i-7 ] + s1 قم بتهيئة متغيرات العمل إلى قيمة التجزئة الحالية: أ := ح0 ب := ح1 ج := ح2 د := ح3 e := h4 f := h5 g := h6 h := h7 حلقة التكرار الرئيسية لدالة الضغط: من أجل i من 0 إلى 63 S1 := (e rightrotate 6) xor (e rightrotate 11) xor (e rightrotate 25) ch := (e and f) xor (( not e) and g) temp1 := h + S1 + ch + k [ i ] + w [ i ] S0 := (a rightrotate 2) xor (a rightrotate 13) xor (a rightrotate 22) maj := (a and b) xor (a and c) xor b and c) temp2 := S0 + maj h := g g := f f := e e := d + temp1 د := ج ج := ب ب := أ أ := درجة الحرارة 1 + درجة الحرارة 2 أضف الجزء المضغوط إلى قيمة التجزئة الحالية: h0 := h0 + a h1 := h1 + b h2 := h2 + c h3 := h3 + d h4 := h4 + e h5 := h5 + f h6 := h6 + g h7 := h7 + h إنتاج قيمة التجزئة النهائية (big-endian): digest := hash := h0 append h1 append h2 append h3 append h4 append h5 append h6 append h7
يمكن تحسين حساب قيمتي chو بنفس الطريقة الموضحة لـ SHA-1 .maj
SHA-224 مطابق لـ SHA-256، باستثناء ما يلي:
- تختلف قيم التجزئة الأولية
h0، وh7 - يتم إنشاء الناتج عن طريق حذف
h7.
قيم التجزئة الأولية لخوارزمية SHA-224 (بترتيب البايتات الكبير): (الـ 32 بت الثانية من الأجزاء الكسرية للجذور التربيعية للأعداد الأولية من 9 إلى 16، من 23 إلى 53) h [ 0..7 ] := 0xc1059ed8، 0x367cd507، 0x3070dd17، 0xf70e5939، 0xffc00b31، 0x68581511، 0x64f98fa7، 0xbefa4fa4
SHA-512 متطابق في بنيته مع SHA-256، ولكن:
- تم تقسيم الرسالة إلى أجزاء بحجم 1024 بت،
- تم توسيع قيم التجزئة الأولية وثوابت الجولة إلى 64 بت،
- هناك 80 جولة بدلاً من 64،
- تحتوي مصفوفة جدولة الرسائل w على 80 كلمة 64 بت بدلاً من 64 كلمة 32 بت،
- لتوسيع مصفوفة جدول الرسائل w، تكون الحلقة من 16 إلى 79 بدلاً من أن تكون من 16 إلى 63.
- تستند الثوابت الدائرية إلى أول 80 عددًا أوليًا من 2 إلى 409.
- يبلغ طول الكلمة المستخدمة في العمليات الحسابية 64 بت.
- طول الرسالة الملحق (قبل المعالجة المسبقة)، بالبتات ، هو عدد صحيح كبير النهاية مكون من 128 بت، و
- تختلف كميات الإزاحة والتدوير المستخدمة.
قيم التجزئة الأولية لخوارزمية SHA-512 (بنظام big-endian): h [ 0..7 ] := 0x6a09e667f3bcc908, 0xbb67ae8584caa73b, 0x3c6ef372fe94f82b, 0xa54ff53a5f1d36f1, 0x510e527fade682d1، 0x9b05688c2b3e6c1f، 0x1f83d9abfb41bd6b، 0x5be0cd19137e2179 ثوابت جولة SHA-512: k [ 0..79 ] := 0x428a2f98d728ae22, 0x7137449123ef65cd, 0xb5c0fbcfec4d3b2f, 0xe9b5dba58189dbbc, 0x3956c25bf348b538, 0x59f111f1b605d019, 0x923f82a4af194f9b, 0xab1c5ed5da6d8118, 0xd807aa98a3030242, 0x12835b0145706fbe, 0x243185be4ee4b28c, 0x550c7dc3d5ffb4e2, 0x72be5d74f27b896f, 0x80deb1fe3b1696b1, 0x9bdc06a725c71235, 0xc19bf174cf692694، 0xe49b69c19ef14ad2، 0xefbe4786384f25e3، 0x0fc19dc68b8cd5b5، 0x240ca1cc77ac9c65، 0x2de92c6f592b0275، 0x4a7484aa6ea6e483، 0x5cb0a9dcbd41fbd4، 0x76f988da831153b5، 0x983e5152ee66dfab، 0xa831c66d2db43210، 0xb00327c898fb213f، 0xbf597fc7beef0ee4، 0xc6e00bf33da88fc2، 0xd5a79147930aa725، 0x06ca6351e003826f, 0x142929670a0e6e70, 0x27b70a8546d22ffc, 0x2e1b21385c26c926, 0x4d2c6dfc5ac42aed, 0x53380d139d95b3df، 0x650a73548baf63de، 0x766a0abb3c77b2a8، 0x81c2c92e47edaee6، 0x92722c851482353b، 0xa2bfe8a14cf10364، 0xa81a664bbc423001، 0xc24b8b70d0f89791، 0xc76c51a30654be30، 0xd192e819d6ef5218، 0xd69906245565a910, 0xf40e35855771202a, 0x106aa07032bbd1b8, 0x19a4c116b8d2d0c8, 0x1e376c085141ab53, 0x2748774cdf8eeb99, 0x34b0bcb5e19b48a8, 0x391c0cb3c5c95a63, 0x4ed8aa4ae3418acb, 0x5b9cca4f7763e373, 0x682e6ff3d6b2b8a3, 0x748f82ee5defb2fc, 0x78a5636f43172f60, 0x84c87814a1f0ab72, 0x8cc702081a6439ec, 0x90befffa23631e28، 0xa4506cebde82bde9، 0xbef9a3f7b2c67915، 0xc67178f2e372532b، 0xca273eceea26619c، 0xd186b8c721c0c207, 0xeada7dd6cde0eb1e, 0xf57d4f7fee6ed178, 0x06f067aa72176fba, 0x0a637dc5a2c898a6, 0x113f9804bef90dae, 0x1b710b35131c471b, 0x28db77f523047d84, 0x32caab7b40c72493, 0x3c9ebe0a15c9bebc, 0x431d67c49c100d4c، 0x4cc5d4becb3e42b6، 0x597f299cfc657e2a، 0x5fcb6fab3ad6faec، 0x6c44198c4a475817 SHA-512 المجموع والانحراف المعياري: S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39) S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41) s0 := (w [ i-15 ] rightrotate 1) xor (w [ i-15 ] rightrotate 8) xor (w [ i-15 ] rightshift 7) s1 := (w [ i-2 ] rightrotate 19) xor (w [ i-2 ] rightrotate 61) xor (w [ i-2 ] rightshift 6)
SHA-384 مطابق لـ SHA-512، باستثناء ما يلي:
- تختلف قيم التجزئة الأولية (مأخوذة من الأعداد الأولية من التاسع إلى السادس عشر)
h0، وh7 - يتم إنشاء الناتج عن طريق حذف
h6وh7.
قيم التجزئة الأولية لخوارزمية SHA-384 (بنظام big-endian): h [ 0..7 ] := 0xcbbb9d5dc1059ed8, 0x629a292a367cd507, 0x9159015a3070dd17, 0x152fecd8f70e5939, 0x67332667ffc00b31، 0x8eb44a8768581511، 0xdb0c2e0d64f98fa7، 0x47b5481dbefa4fa4
SHA-512/t مطابق لـ SHA-512 باستثناء ما يلي:
- يتم تحديد قيم التجزئة الأولية من
h0خلال دالة توليد متجه التهيئة SHA-512/t ،h7 - يتم إنشاء الناتج عن طريق اقتطاع سلسلة البيانات من
h0خلال t بت،h7 - لا يُسمح باستخدام قيمة t تساوي 384، بل يجب استخدام SHA-384 كما هو محدد،
- تم ذكر قيم t 224 و 256 على وجه الخصوص باعتبارها معتمدة.
قيم التجزئة الأولية لـ SHA-512/224 (بنظام big-endian): h [ 0..7 ] := 0x8c3d37c819544da2, 0x73e1996689dcd4d6, 0x1dfab7ae32ff9c82, 0x679dd514582f9fcf, 0x0f6d2b697bd44da8، 0x77e36f7304C48942، 0x3f9d85a86a1d36C8، 0x1112e6ad91d692a1 قيم التجزئة الأولية لخوارزمية SHA-512/256 (بنظام big-endian): h [ 0..7 ] := 0x22312194fc2bf72c, 0x9f555fa3c84c64c2, 0x2393b86b6f53b151, 0x963877195940eabd, 0x96283ee2a88effe3، 0xbe5e1e2553863992، 0x2b0199fc2c85b8aa، 0x0eb72ddC81c52ca2
تقوم دالة توليد SHA -512/t IV بتقييم خوارزمية SHA-512 معدلة على سلسلة ASCII "SHA-512/ t "، مع استبدالها بالتمثيل العشري للقيمة t . تكون خوارزمية SHA-512 المعدلة مطابقة لخوارزمية SHA-512 الأصلية باستثناء أن قيمها الأولية h0قد h7خضعت لعملية XOR مع الثابت السداسي العشري 0xa5a5a5a5a5a5a5a5.
يمكن العثور على نموذج تطبيق C لعائلة SHA-2 من وظائف التجزئة في RFC 6234 .
مقارنة وظائف SHA
في الجدول أدناه، تعني الحالة الداخلية "مجموع التجزئة الداخلي" بعد كل عملية ضغط لكتلة البيانات.
| الخوارزمية والمتغير | حجم الإخراج (بت) | حجم الحالة الداخلية (بت) | حجم الكتلة (بت) | جولات | العمليات | الأمان (بت) | الأداء على معالجات Skylake (متوسط عدد الدورات لكل مليار دورة ) [ 47 ] | نُشر لأول مرة | ||
|---|---|---|---|---|---|---|---|---|---|---|
| رسائل طويلة | 8 بايت | |||||||||
| MD5 (كمرجع) | 128 | 128 (4 × 32) | 512 | 4 (16 عملية في كل جولة) | و، Xor، أو، Rot، Add (mod 2 32 ) | ≤ 18 (تم العثور على تصادمات) [ 48 ] | 4.99 | 55.00 | 1992 | |
| SHA-0 | 160 | 160 (5 × 32) | 512 | 80 | و، Xor، أو، Rot، Add (mod 2 32 ) | أقل من 34 (تم العثور على تصادمات) | ≈ SHA-1 | ≈ SHA-1 | 1993 | |
| SHA-1 | < 63 (تم العثور على تصادمات) [ 49 ] | 3.47 | 52.00 | 1995 | ||||||
| SHA-2 | SHA-224 SHA-256 | 224 256 | 256 (8 × 32) | 512 | 64 | و، Xor، أو، Rot، Shr، Add (mod 2 32 ) | 112 128 | 7.62 7.63 | 84.50 85.25 | 2004 2001 |
| SHA-384 | 384 | 512 (8 × 64) | 1024 | 80 | و، Xor، أو، روت، شر، إضافة (mod 2 64 ) | 192 | 5.12 | 135.75 | 2001 | |
| SHA-512 | 512 | 256 | 5.06 | 135.50 | 2001 | |||||
| SHA-512/224 SHA-512/256 | 224 256 | 112 128 | ≈ SHA-384 | ≈ SHA-384 | 2012 | |||||
| SHA-3 | شا3-224 شا3-256 شا3-384 شا3-512 | 224 256 384 512 | 1600 (5 × 5 × 64) | 1152 1088 832 576 | 24 [ 50 ] | و، Xor، Rot، Not | 112 128 192 256 | 8.12 8.59 11.06 15.88 | 154.25 155.50 164.00 164.00 | 2015 |
| شيك ١٢٨ شيك ٢٥٦ | د (اعتباطي) د (اعتباطي) | 1344 1088 | الحد الأدنى ( د /2، 128) الحد الأدنى ( د /2، 256) | 7.08 8.59 | 155.25 155.50 | |||||
في عمود العمليات الثنائية، يرمز "Rot" إلى التدوير بدون حمل ، ويرمز "Shr" إلى الإزاحة المنطقية لليمين . تستخدم جميع هذه الخوارزميات الجمع المعياري بطريقة أو بأخرى باستثناء SHA-3.
ترد في الجدول أدناه قياسات أداء أكثر تفصيلاً على بنى المعالجات الحديثة.
| بنية وحدة المعالجة المركزية | تكرار | الخوارزمية | حجم الكلمة (بت) | دورات/بايت x86 | ميجابايت/ثانية x86 | دورات/بايت x86-64 | ميجابايت/ثانية x86-64 |
|---|---|---|---|---|---|---|---|
| معالجات إنتل آيفي بريدج | 3.5 جيجاهرتز | SHA-256 | 32 | 16.80 | 199 | 13.05 | 256 |
| SHA-512 | 64 | 43.66 | 76 | 8.48 | 394 | ||
| وحدة المعالجة المركزية AMD Piledriver APU | 3.8 جيجاهرتز | SHA-256 | 32 | 22.87 | 158 | 18.47 | 196 |
| SHA-512 | 64 | 88.36 | 41 | 12.43 | 292 |
تم تشغيل أرقام الأداء المصنفة بـ " x86 " باستخدام كود 32 بت على معالجات 64 بت ، بينما تمثل أرقام " x86-64 " كود 64 بت أصلي. على الرغم من أن خوارزمية SHA-256 مصممة لحسابات 32 بت، إلا أنها تستفيد من الكود المُحسَّن لمعالجات 64 بت على بنية x86. تُعد تطبيقات SHA-512 ذات 32 بت أبطأ بكثير من نظيراتها ذات 64 بت. ستؤدي متغيرات الخوارزميتين ذات أحجام الإخراج المختلفة أداءً متقاربًا، نظرًا لتطابق وظائف توسيع الرسالة وضغطها، واختلاف قيم التجزئة الأولية وأحجام الإخراج فقط. تُحقق أفضل تطبيقات MD5 وSHA-1 أداءً يتراوح بين 4.5 و6 دورات لكل بايت على المعالجات الحديثة.
أُجريت الاختبارات في جامعة إلينوي في شيكاغو على نظام hydra8 الخاص بهم، والذي يعمل بمعالج Intel Xeon E3-1275 V2 بسرعة 3.5 جيجاهرتز ، وعلى نظام hydra9 الخاص بهم، والذي يعمل بمعالج AMD A10-5800K APU بسرعة 3.8 جيجاهرتز. [ 51 ] تمثل سرعات دورات المعالجة لكل بايت المذكورة أعلاه متوسط أداء خوارزمية لمعالجة رسالة بحجم 4096 بايت باستخدام برنامج SUPERCOP المعياري للتشفير. [ 52 ] تم استقراء أداء MiB/s من سرعة معالج وحدة المعالجة المركزية على نواة واحدة؛ وسيختلف الأداء الفعلي تبعًا لعدة عوامل.
مثل العديد من أنواع التجزئة الأخرى، يتطلب SHA-2 استخدام دالة HMAC لإنشاء رمز مصادقة الرسالة (MAC). وهو بناء بسيط.لا يمكن استخدامه كرمز مصادقة الرسائل (MAC)، لأنه عرضة لأنواع قليلة من الهجمات، بما في ذلك هجوم تمديد الطول . [ 53 ]
التطبيقات
مكتبات التشفير التي تدعم SHA-2:
- بوتان
- قلعة نطاطة
- مكتبة التشفير
- Crypto++
- Libgcrypt
- Mbed TLS [ 54 ] [ 55 ]
- ليبسوديوم
- نبات القراص
- LibreSSL
- OpenSSL
- Gnutls
- wolfSSL
يتم توفير تسريع الأجهزة من خلال ملحقات المعالج التالية:
- ملحقات Intel SHA : متوفرة على بعض معالجات Intel و AMD x86.
- عبر بادلوك
- ملحقات التشفير ARMv8 [ 56 ]
- IBM z/Architecture : متوفر منذ عام 2005 كجزء من ملحقات مساعدة أمان الرسائل 1 (SHA-256) و 2 (SHA-512) [ 57 ]
- IBM Power ISA منذ الإصدار 2.07
انظر أيضاً
مراجع
- 1 2 خوفراتوفيتش، ديمتري؛ ريشبيرغر، كريستيان؛ سافيليفا، ألكسندرا (2011). "المجموعات الثنائية للصور الأولية: هجمات على Skein-512 وعائلة SHA-2" (ملف PDF) . أرشيف IACR للمطبوعات الإلكترونية في علم التشفير . 2011 (286). مؤرشف (ملف PDF) من الأصل بتاريخ 15 فبراير 2022. تم الاسترجاع بتاريخ 15 فبراير 2022 .
- لامبرغر ، ماريو ومندل، فلوريان (2011). "هجوم تفاضلي من الرتبة العليا على خوارزمية SHA-256 المُختزلة" (ملف PDF) . أرشيف IACR للمطبوعات الإلكترونية في علم التشفير . 2011 (37). مؤرشف (ملف PDF) من الأصل بتاريخ 22-12-2022 . تم الاطلاع عليه بتاريخ 15-02-2022 .
- ↑ بينارد، ووتر؛ فان ويركوفن، تيم. "حول عائلة خوارزميات التجزئة الآمنة" (ملف PDF) . staff.science.uu.nl . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 30 مارس 2016.
- 1 2 إشعار السجل الفيدرالي 02-21599، يُعلن الموافقة على منشور FIPS 180-2، مؤرشف بتاريخ 14 مارس 2022 في Wayback Machine
- ١ ٢ "تفاصيل حقوق الملكية الفكرية: الولايات المتحدة الأمريكية كما هو ممثل في بيان الترخيص العام لوكالة الأمن القومي" . متتبع بيانات IETF . ٨٥٨. مؤرشف من الأصل في ١٦ يونيو ٢٠١٦. تم الاسترجاع في ١٧ فبراير ٢٠٠٨ .
- ↑ براءة الاختراع الأمريكية رقم 6829355 ، ليلي، جلين م.، "جهاز وطريقة للتجزئة التشفيرية أحادية الاتجاه"، نُشرت في 7 ديسمبر 2004، مُسجلة باسم وكالة الأمن القومي .
- ↑ Algazy et al. 2024 .
- ↑ "FIPS 180-2 مع إشعار التغيير 1" (ملف PDF) . csrc.nist.gov . مؤرشف (ملف PDF) من الأصل بتاريخ 9 أغسطس 2017. تم الاطلاع عليه بتاريخ 15 فبراير 2022 .
- ↑ إشعار السجل الفيدرالي E8-24743، يُعلن الموافقة على منشور FIPS 180-3
- 1 2 دانغ، كوين (24 أغسطس 2012). توصيات للتطبيقات التي تستخدم خوارزميات التجزئة المعتمدة (تقرير). المعهد الوطني للمعايير والتكنولوجيا. مؤرشف من الأصل في 28 أغسطس 2023. تم الاطلاع عليه في 28 أغسطس 2023 .
- 1 2 باركر، إيلين؛ باركر، ويليام؛ بور، ويليام؛ بولك، دبليو؛ سميد، مايلز (10 يوليو 2012). توصيات لإدارة المفاتيح، الجزء 1: عام (مراجعة 3) (تقرير). المعهد الوطني للمعايير والتكنولوجيا. مؤرشف من الأصل في 28 أغسطس 2023. تم الاسترجاع في 28 أغسطس 2023 .
- ↑ "NIST.gov – قسم أمن الحاسوب – مركز موارد أمن الحاسوب" . 29 ديسمبر 2016. مؤرشف من الأصل في 9 سبتمبر 2017. تم الاطلاع عليه في 15 فبراير 2022 .
- ↑ باركر، إيلين؛ روجينسكي، ألين (13 يناير 2011). التحولات: توصيات بشأن الانتقال في استخدام خوارزميات التشفير وأطوال المفاتيح (تقرير). المعهد الوطني للمعايير والتكنولوجيا. مؤرشف من الأصل بتاريخ 28 أغسطس 2023. تم الاطلاع عليه بتاريخ 28 أغسطس 2023 .
- ↑ إشعار السجل الفيدرالي 2012-5400، الذي يعلن الموافقة على منشور FIPS 180-4 .
- ↑ المعهد الوطني للمعايير والتكنولوجيا، قرار مراجعة معيار FIPS 180-4، معيار التجزئة الآمن (SHS)
- ↑ "المعهد الوطني للمعايير والتكنولوجيا يختار الفائز في مسابقة خوارزمية التجزئة الآمنة (SHA-3)" . المعهد الوطني للمعايير والتكنولوجيا . 2 أكتوبر 2012. مؤرشف من الأصل في 2 أبريل 2015. تم الاطلاع عليه في 24 فبراير 2015 .
- ^ فرانك، لوكاس دود؛ جينجا، غابرييل أوغوستو؛ كارمو، جواو باولو؛ أفونسو، خوسيه أ. لوبي، ماكسيميليام (2024). "تصميم ASIC مخصص لـ SHA-256 باستخدام أدوات مفتوحة المصدر" . أجهزة الكمبيوتر . 13 (1): 9. دوى : 10.3390/كمبيوتر13010009 . اتش دي ال : 1822/89307 .
- ↑ "التحقق من صحة صور دبيان" . مؤرشف من الأصل بتاريخ 19-02-2024 . تم الاطلاع عليه بتاريخ 19-02-2024 .
- ↑ ماركوف، جون (27 يناير 2009). "أداة للتحقق من السجلات الرقمية، حتى مع تطور التكنولوجيا" . صحيفة نيويورك تايمز . الرقم الدولي الموحد للدوريات 0362-4331 . مؤرشف من الأصل في 19 سبتمبر 2023. تم الاطلاع عليه في 27 أغسطس 2023 .
- ↑ هارديكر، ويس (2022-08-12). إزالة SHA-1 من الاستخدام النشط ضمن DNSSEC (تقرير). فريق عمل هندسة الإنترنت.
- ↑ "الأمان/الميزات - ويكي دبيان" . wiki.debian.org . تم الاطلاع عليه بتاريخ 13 يناير 2025 .
- ↑ "تجزئات SHA - ويكي Arch" . wiki.archlinux.org . تم الاطلاع عليه بتاريخ 13 يناير 2025 .
- ↑ "البيتكوين لا يهدر الطاقة" . فائض البيتكوين . مؤرشف من الأصل بتاريخ 28 مايو 2022. تم الاطلاع عليه بتاريخ 20 أبريل 2020 .
- ↑ "ما هو SHA-256 وما علاقته بالبيتكوين؟ - موسوعة العملات الرقمية" . موسوعة العملات الرقمية . 21-09-2017. مؤرشف من الأصل في 17-09-2018 . تم الاطلاع عليه في 17-09-2018 .
- ↑ 3GPP TS 33.401، بنية وإجراءات الأمان لشبكة E-UTRAN
- ↑ 3GPP TS 33.501، بنية وإجراءات الأمان لأنظمة الجيل الخامس
- ↑ قسم أمن الحاسوب، مختبر تكنولوجيا المعلومات (4 يناير 2017). "سياسة المعهد الوطني للمعايير والتكنولوجيا بشأن دوال التجزئة - دوال التجزئة | مركز أبحاث أمن الحاسوب | مركز أبحاث أمن الحاسوب" . مركز أبحاث أمن الحاسوب | المعهد الوطني للمعايير والتكنولوجيا . مؤرشف من الأصل بتاريخ 28 أغسطس 2023. تم الاطلاع عليه بتاريخ 27 أغسطس 2023 .
- ↑ "التجزئة الآمنة" . المعهد الوطني للمعايير والتكنولوجيا . مؤرشف من الأصل بتاريخ 25-06-2011 . تم الاطلاع عليه بتاريخ 25-11-2010 .
- ↑ "نظرة عامة على حزمة الخدمة الثالثة لنظام التشغيل ويندوز إكس بي" (ملف PDF) . شركة مايكروسوفت. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 30 مايو 2008.
- ↑ "التراجع التدريجي لـ SHA-1" . مدونة كروميوم . مؤرشف من الأصل بتاريخ 7 أغسطس 2023. تم الاطلاع عليه بتاريخ 27 أغسطس 2023 .
- ↑ ميل، إريك. "SHAAAAAAAAAAAAA" . SHAAAAAAAAAAAAA.com . مؤرشف من الأصل بتاريخ 2017-03-01 . تم الاطلاع عليه بتاريخ 2015-08-26 .
- ↑ "الأسئلة الشائعة غير الرسمية حول إيقاف استخدام SHA1 في متصفح Chrome" . فيليبو فالسوردا . 8 أبريل 2015. مؤرشف من الأصل في 28 أغسطس 2023. تم الاطلاع عليه في 27 أغسطس 2023 .
- ↑ "تحديث لخطة إيقاف استخدام SHA-1 - مدونة مطوري Microsoft Edge" . blogs.windows.com . 29 أبريل 2016. مؤرشف من الأصل بتاريخ 28 نوفمبر 2016. تم الاطلاع عليه بتاريخ 28 نوفمبر 2016 .
- ↑ "فايرفوكس: Mozilla schaltet SHA-1 ab... und direkt wieder an" . heise.de (باللغة الألمانية). 2016-01-08. مؤرشفة من الأصلي بتاريخ 2023-08-28 . تم الاسترجاع 2025-01-18 .
- ↑ ألكسندر سوتيروف، مارك ستيفنز، جاكوب أبيلباوم، أرجين لينسترا، ديفيد مولنار، داغ آرني أوسفيك، بيني دي ويغر، MD5 يُعتبر ضارًا اليوم: إنشاء شهادة CA مزيفة . مؤرشف بتاريخ 23 مارس 2022 في Wayback Machine ، تم الوصول إليه في 29 مارس 2009.
- ↑ جي لي، تاكانوري إيسوبي، وكيوجي شيبوتاني، مختبر أبحاث سوني الصين وشركة سوني، تحويل هجوم الصورة المسبقة "اللقاء في المنتصف" إلى هجوم التصادم الزائف: تطبيق على SHA-2 . مؤرشف بتاريخ 24-02-2022 في Wayback Machine .
- ↑ ساناديا، سوميترا كومار؛ ساركار، بالاش (2008)، هجمات تصادم جديدة ضد خوارزمية SHA-2 حتى 24 خطوة ، سلسلة محاضرات في علوم الحاسوب، المجلد 5365، سبرينغر-فيرلاغ، الصفحات 91-103 ، doi : 10.1007/978-3-540-89754-5_8 ، ISBN 978-3-540-89753-8تمت أرشفة هذا النص من المصدر الأصلي بتاريخ 21 يناير 2022 ، وتمت معاينته بتاريخ 12 فبراير 2024..
- ↑ ساناديا، سوميترا كومار؛ ساركار، بالاش (2009). "تحليل توافقي للهجمات الحديثة على عائلة SHA-2 ذات الخطوات المختزلة" . التشفير والاتصالات . 1 (2): 135-173 . doi : 10.1007/s12095-009-0011-5 . مؤرشف من الأصل في 2023-08-02 . تم الاسترجاع في 2024-02-12 .
- ↑ آوكي، كازومارو؛ غو، جيان؛ ماتوسيفيتش، كريستيان؛ ساساكي، يو؛ وانغ، لي (2009). "الصور الأولية لخوارزمية SHA-2 المُختزلة الخطوات". التطورات في علم التشفير - ASIACRYPT 2009. سلسلة محاضرات في علوم الحاسوب. المجلد 5912. سبرينغر برلين هايدلبرغ. الصفحات 578-597 . doi : 10.1007/978-3-642-10366-7_34 . ISBN 978-3-642-10366-7ISSN 0302-9743
- ↑ غو، جيان؛ لينغ، سان؛ ريشبيرغر، كريستيان؛ وانغ، هواكسيونغ (2010). "هجمات متقدمة على الصور الأولية من نوع "اللقاء في المنتصف": النتائج الأولية على خوارزمية تايغر الكاملة، ونتائج محسّنة على خوارزميتي MD4 وSHA-2". التطورات في علم التشفير - ASIACRYPT 2010 (ملف PDF) . سلسلة محاضرات في علوم الحاسوب. المجلد 6477. سبرينغر برلين هايدلبرغ. الصفحات 56-75 . doi : 10.1007/978-3-642-17373-8_4 . ISBN 978-3-642-17373-8ISSN 0302-9743 . مؤرشف (PDF) من الأصل بتاريخ 2022-03-03 . تم الاطلاع عليه بتاريخ 2022-02-15 .
- ↑ مندل، فلوريان؛ ناد، توميسلاف؛ شلافر، مارتن (2013). "تحسين التصادمات المحلية: هجمات جديدة على SHA-256 المُخفَّض". التطورات في علم التشفير - EUROCRYPT 2013. سلسلة محاضرات في علوم الحاسوب. المجلد 7881. سبرينغر برلين هايدلبرغ. الصفحات 262-278 . doi : 10.1007/978-3-642-38348-9_16 . ISBN 978-3-642-38348-9ISSN 0302-9743 . مؤرشف من الأصل بتاريخ 2018-11-06 . تم الاطلاع عليه بتاريخ 2014-12-13 .
- ↑ إيشلسيدر، ماريا؛ مندل، فلوريان؛ وشلافر، مارتن (2014). "الأساليب الاستدلالية المتفرعة في البحث التفاضلي عن التصادم مع تطبيقات على SHA-512" (ملف PDF) . أرشيف IACR Cryptology ePrint . 2014 (302). مؤرشف (PDF) من الأصل بتاريخ 20 يناير 2022. تم الاطلاع عليه بتاريخ 15 فبراير 2022 .
- ↑ دوبراونيغ، كريستوف؛ إيشلسيدر، ماريا؛ ومندل، فلوريان (2016). "تحليل SHA-512/224 وSHA-512/256" (ملف PDF) . الرابطة الدولية لأبحاث التشفير . مؤرشف (ملف PDF) من الأصل بتاريخ 15 يوليو 2017. تاريخ الاسترجاع: 15 أبريل 2016 .
- ↑ لي، ينغشين؛ ليو، فوكانغ؛ وانغ، غاولي (2024). "سجلات جديدة في هجمات التصادم على SHA-2" . أرشيف الطباعة الإلكترونية لعلم التشفير . مؤرشف من الأصل في 2024-03-02 . تم الاسترجاع في 2024-03-02 .
- ↑ "التجزئة الآمنة - برنامج التحقق من صحة خوارزمية التشفير" . مركز أبحاث أمن الحاسوب التابع للمعهد الوطني للمعايير والتكنولوجيا . 5 أكتوبر 2016. تم الاطلاع عليه بتاريخ 8 نوفمبر 2025 .
- ↑ "قائمة التحقق من صحة SHS" . المعهد الوطني للمعايير والتكنولوجيا . 16-06-2017. مؤرشف من الأصل في 17-06-2017.
- ↑ "جدول القياسات" . bench.cr.yp.to .
- ↑ تاو، شي؛ ليو، فانباو؛ فينغ، دينغقو (2013). هجوم التصادم السريع على MD5 (ملف PDF) . أرشيف الطباعة الإلكترونية لعلم التشفير (تقرير فني). IACR .
- ↑ ستيفنز، مارك ؛ بورشتين، إيلي ؛ كاربمان، بيير؛ ألبرتيني، أنج؛ ماركوف، ياريك. أول تصادم لخوارزمية SHA-1 الكاملة (ملف PDF) (تقرير فني). بحث جوجل . مؤرشف من الأصل (ملف PDF) في 7 فبراير 2026.
- مارك ستيفنز؛ إيلي بورشتين؛ بيير كاربمان؛ أنج ألبرتيني؛ ياريك ماركوف؛ أليكس بيتي بيانكو؛ كليمنت بايس (23 فبراير 2017). "الإعلان عن أول تصادم SHA1" . مدونة جوجل للأمن .
- ↑ "عائلة وظائف إسفنجة كيكاك" . تم الاسترجاع في 27-01-2016 .
- ↑ معايير SUPERCOP: قياسات وظائف التجزئة، مفهرسة حسب الجهاز .
- ↑ "سوبر كوب" . مؤرشف من الأصل بتاريخ 15 فبراير 2015. تم الاطلاع عليه بتاريخ 24 فبراير 2015 .
- ^ خليبنيكوف وأدولفسين 2022 ، ص. 74.
- ↑ " مجموعات التشفير المدعومة لبروتوكول SSL / TLS " . مؤرشف من الأصل بتاريخ 12 مايو 2019. تم الاطلاع عليه بتاريخ 19 أكتوبر 2019 .
- ↑ " سجل تغييرات Mbed TLS ، 7 يوليو 2007" . GitHub . مؤرشف من الأصل في 4 فبراير 2019. تم الاطلاع عليه في 19 أكتوبر 2019 .
- ↑ "دليل المرجع التقني لمعالج ARM Cortex-A53 MPCore - ملحق التشفير" . مؤرشف من الأصل بتاريخ 2020-06-01 . تم الاطلاع عليه بتاريخ 2022-02-15 .
- ↑ مبادئ تشغيل IBM z/Architecture، رقم المنشور SA22-7832. انظر تعليمات KIMD وKLMD في الفصل 7.
للمزيد من القراءة
- ألغازي، ك.؛ ساكان، ك.؛ نيسانبايفا، س.؛ ليزونوف، أ. (2024). "سيرغا2: مخطط توقيع قائم على التجزئة ما بعد الكمومية" . الحوسبة . 12 (6): 125. doi : 10.3390/computation12060125 .
- هنري جيلبرت، هيلينا هاندشوه: تحليل أمني لـ SHA-256 و Sisters. مجالات مختارة في علم التشفير 2003: ص 175-193.
- خليبنيكوف، أليكسي؛ أدولفسن، جارل (2022). تبسيط علم التشفير باستخدام OpenSSL 3.0: اكتشف أفضل التقنيات لتعزيز أمان شبكتك باستخدام OpenSSL 3.0 . برمنغهام: دار نشر Packt. ISBN 978-1-80056-034-5.
- «مراجعة مقترحة لمعيار معالجة المعلومات الفيدرالي (FIPS) 180، معيار التجزئة الآمنة» . السجل الفيدرالي . 59 (131): 35317–35318 . 11 يوليو 1994. مؤرشف من الأصل في 28 يوليو 2020. تم الاطلاع عليه في 26 أبريل 2007 .
روابط خارجية
- وصف لخوارزميات SHA-256 وSHA-384 وSHA-512 من المعهد الوطني للمعايير والتكنولوجيا (NIST).
- مدقق SHA-2 – أداة SHAChecker للتحقق من توافق بروتوكول SSL مع SHA-2
- حاسبة SHA-256 – حاسبة SHA-256
- مواصفات معيار التجزئة الآمن (SHS) – مسودة لمعيار التجزئة الآمن المقترح (SHA-0)
- معيار التجزئة الآمن (SHS) – معيار التجزئة الآمن المقترح (SHA-0)
- مجموعة أدوات التشفير التابعة لمركز أبحاث التشفير الكندي (CSRC) – الموقع الرسمي للمعهد الوطني للمعايير والتكنولوجيا (NIST) لمعيار التجزئة الآمنة
- FIPS PUB 180-4: معيار التجزئة الآمن (SHS) ( ملف PDF ، 834 كيلوبايت) - الإصدار الحالي من معيار التجزئة الآمن (SHA-1، SHA-224، SHA-256، SHA-384، وSHA-512)، أغسطس 2015
- متجهات اختبار SHA-256/384/512 من مشروع NESSIE
- نواقل اختبار SHA-1 وSHA-2 من موقع NIST
- مشروع التشفير التجزئي التابع للمعهد الوطني للمعايير والتكنولوجيا - مسابقة SHA-3
- RFC 3874 : "دالة تجزئة أحادية الاتجاه 224 بت: SHA-224"
- RFC 6234 : "خوارزميات التجزئة الآمنة الأمريكية (SHA وHMAC وHKDF المستندة إلى SHA)"؛ يحتوي على نموذج تطبيق بلغة C
- عرض توضيحي لخوارزمية SHA-256
- دوال التجزئة المشفرة
- خوارزميات التحقق من المجموع الاختباري
- التشفير في وكالة الأمن القومي
- برامج متاحة للعموم مع شفرة المصدر
- المعهد الوطني للمعايير والتكنولوجيا
