مولّد تجزئة SHA-3 (إسفنج Keccak)
أنشئ تجزئات SHA-3 أونلاين مجاناً. بنية إسفنج NIST FIPS 202 — معيار ما بعد SHA-2. مخرجات SHA3-256 في 64 حرفاً سداسياً. في المتصفح عبر js-sha3 محمّل كسولاً؛ بدون رفع.
ما هو SHA-3؟
SHA-3 (خوارزمية التجزئة الآمنة 3) هو الجيل الثالث من معيار التجزئة الآمن لـ NIST، عُيِّر في FIPS 202 في أغسطس 2015. على عكس SHA-1 وSHA-2 القائمتَين على بنية Merkle-Damgård، يستخدم SHA-3 تصميماً مختلفاً جذرياً يُسمى بنية الإسفنج — اختيار اتخذته NIST عمداً لضمان أن الكسر التحليلي التعموي لـ SHA-2 لن يُعرّض SHA-3 تلقائياً للخطر.
مسابقة NIST SHA-3 (2007–2012): طلبت NIST التقديمات العامة عالمياً في 2007. بعد ثلاث جولات تقييمية، ضُيِّق نطاق 64 مرشحاً إلى خمسة متأهلين نهائيين: BLAKE، Grøstl، JH، Keccak، وSkein. في أكتوبر 2012، اختيرت Keccak — التي صممها Guido Bertoni وJoan Daemen وMichaël Peeters وGilles Van Assche من STMicroelectronics وNXP Semiconductors — فائزةً. تصميمها الفريد القائم على الإسفنج أعطاها التنوع البنيوي الذي أولَت NIST له الأولوية.
بنية الإسفنج: يمتص SHA-3 المدخلات في حالة 1600 بت (تقليب Keccak-f[1600]) في مرحلة الامتصاص، ثم يعصر بتات المخرجات من الحالة في مرحلة العصر. لـ SHA3-256، نسبة السرعة/السعة هي 1088/512 بت. لأن 256 بتاً فقط من أصل 1600 بت من الحالة الداخلية تظهر في المخرجات، لا يستطيع مهاجم إعادة بناء الحالة الكاملة من التجزئة — مما يجعل هجمات امتداد الطول مستحيلة بنيوياً.
SHA-3 مقابل Keccak — فارق الحشو: عدّلت NIST تقديم Keccak الأصلي بتغيير حشو فصل المجال من 0x01 إلى 0x06. هذا يعني أن NIST SHA3-256 وKeccak-256 الأصلية تنتجان مخرجات سداسية مختلفة من 64 حرفاً لكل مدخلات. هذا ليس مصدر قلق نظري — إنه السبب في أن keccak256 في Ethereum (المجمّد قبل إتمام FIPS 202) يختلف عن مخرجات SHA3-256 من هذه الأداة للسلسلة النصية نفسها. لا تستخدم هذه الأداة أبداً لاشتقاق عناوين Ethereum.
تُعرّف FIPS 202 أربعة متغيّرات SHA-3: SHA3-224 (56 حرفاً)، SHA3-256 (64 حرفاً)، SHA3-384 (96 حرفاً)، SHA3-512 (128 حرفاً). تُنفّذ هذه الأداة SHA3-256، المتغيّر الأكثر شيوعاً والأكثر قابلية للمقارنة مباشرةً بـ SHA-256.
ملاحظة المكتبة: لم تُضَف SHA-3 بعد إلى مواصفة Web Crypto API في المتصفح (crypto.subtle يدعم SHA-1، SHA-256، SHA-384، SHA-512 فقط). تُحمّل هذه الأداة مكتبة جافاسكريبت js-sha3 (~10 كيلوبايت مضغوطة) عند الاستخدام الأول. بعد ذلك التنزيل الوحيد، تعمل جميع العمليات محلياً في متصفحك — لا تُرسل أي بيانات مدخلة أبداً.
// SHA-3 (NIST FIPS 202 SHA3-256) using js-sha3 library
import { sha3_256 } from 'js-sha3';
const hash = sha3_256('Hello, World!');
// → '882f4b6991a775295186a4e3cc5ece9fc0b618c8c3e7a7beafdd0f56f13ae43b'
// Note: this differs from Ethereum's keccak256 for the same input:
// keccak256('Hello, World!') = 'acaf3289d7b601cbd114fb36c4d29c85bbfd5e133f14cb355c3fd8d99367964f'
// The difference is the padding byte: 0x06 (SHA-3) vs 0x01 (original Keccak) أمثلة SHA-3
التحقق من متجه اختبار NIST FIPS 202
abc
3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532
SHA3-256("abc") = 3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532 — هذا متجه اختبار NIST FIPS 202 الرسمي. الصق "abc" في الأداة وتأكد من هذا المخرج بالضبط للتحقق من أنك تحسب SHA-3 من NIST (لا Keccak الأصلية). هذا الاختبار الواحد يُميّز تنفيذ SHA-3 المتوافق مع FIPS من التنفيذ الذي يستخدم بايت حشو Keccak الأقدم.
التمييز بين Keccak وSHA-3 — نفس المدخلات، مخرجات مختلفة
Hello
SHA3-256("Hello") من هذه الأداة (NIST FIPS 202) = 8ca66ee6b2fe4bb928a8e3cd2f508de4119c0895f22df86f0ab7e30e487e4500. keccak256("Hello") في Ethereum = 06b3dfaec148fb1bb2b066f10ec285e7c9bf402ab32aa78a5d38e34566810cd2. نفس المدخلات، مخرجات مختلفة من 64 حرفاً سداسياً. الفارق هو لاحقة الحشو: NIST SHA-3 تستخدم 0x06 بينما Keccak الأصلية (التي جمّدها Ethereum في 2013) تستخدم 0x01. Ethereum سبق توحيد NIST عام 2015 وانشعب بشكل دائم عن متغيّر FIPS 202.
تجزئة أرشيفية مقاومة للحوسبة الكمومية
NIST SP 800-57 Part 1 Rev 5 — Recommendation for Key Management
يوفر SHA3-256 مقاومة صورة أولية 128 بت ضد خوارزمية Grover على حاسوب كمومي — نفس مستوى الأمان الفعّال لـ SHA-256 ضد الهجوم الكمومي. للبيانات التي يجب أن تبقى محصّنة ضد التلاعب بعد 2050، استخدام SHA-3 جنباً إلى جنب مع SHA-256 يوفر دفاعاً متعدد الطبقات: إذا وُجد كسر في بنية إحدى الخوارزميتين (بنية Merkle-Damgård لـ SHA-2؛ إسفنج Keccak لـ SHA-3)، تبقى الأخرى آمنة. راجع أيضاً مولّد SHA-256 للجانب الآخر من هذا التحوّط.
مصادقة رسالة HMAC-SHA3-256 المُفتَّحة
POST /api/ledger
{"amount":250000,"from":"acct-A","to":"acct-B"} HMAC-SHA3-256 هو بديل حديث لـ HMAC-SHA-256 لمصادقة الرسائل المُفتَّحة. لأن بنية إسفنج SHA-3 محصّنة فطرياً ضد هجمات امتداد الطول، فإن MAC المُفتَّح الخام SHA3-256 (KMAC، محدد في NIST SP 800-185) آمن أيضاً — على عكس SHA-256 الخام الذي يتطلب غلاف HMAC للدفاع ضد امتداد الطول. للواجهات API الحساسة الجديدة، يوفر HMAC-SHA3-256 (أو KMAC128) ضمانات معمارية أقوى.
كيفية توليد تجزئات SHA-3
- 1
الصق نصاً في حقل الإدخال
اختر تبويب النص واكتب أو الصق أي سلسلة نصية. تتحدث تجزئة SHA3-256 مباشرةً أثناء الكتابة. عند الاستخدام الأول، تُجلب مكتبة js-sha3 (~10 كيلوبايت) وتُخزَّن مؤقتاً — قد تلاحظ تأخيراً قصيراً في التجزئة الأولى جداً؛ جميع التجزئات اللاحقة فورية. الخوارزمية مضبوطة بالفعل على SHA-3 (NIST FIPS 202 SHA3-256).
- 2
انسخ المخرجات السداسية من 64 حرفاً
انقر على زر النسخ بجانب نتيجة التجزئة. السلسلة السداسية الصغيرة من 64 حرفاً تُنسخ إلى الحافظة. استخدم تبديل الأحرف الكبيرة إذا تطلّب نظامك ذلك. هذه المخرجات تطابق ما ينتجه أي تنفيذ SHA3-256 المتوافق مع FIPS 202 — لكن لاحظ أنها تختلف عن keccak256 في Ethereum لنفس المدخلات.
- 3
تحقق بتبويب المقارنة
انتقل إلى تبويب المقارنة والصق تجزئتَي SHA3-256 جنباً إلى جنب. تستخدم الأداة مقارنة بالزمن الثابت للإبلاغ بالتطابق أو عدمه بدون تسريب معلومات توقيت. مفيد للتحقق من متجهات اختبار NIST CAVP، أو فحص بيانات الأرشيف، أو تأكيد أن تنفيذَي SHA3-256 ينتجان مخرجات متطابقة.
تفاصيل تقنية
- الخوارزمية: بنية إسفنج Keccak-f[1600]
- تُطبّق SHA3-256 تقليب Keccak-f[1600] (24 جولة من عمليات theta، rho، pi، chi، iota على مصفوفة حالة 5×5×64) في بنية إسفنج بمعدل سرعة 1088 بت وسعة 512 بت. تُمتَص المدخلات في كتل 136 بايت (1088 بت)؛ تُعصر 256 بت من المخرجات. يُلحق فاصل المجال في FIPS 202 0x06 قبل الحشو. التنفيذ: NIST FIPS 202 (2015) القسم 6.
- المخرجات: SHA3-256 افتراضياً، 64 حرفاً سداسياً (FIPS 202 تُعرّف أيضاً 224/384/512)
- هذه الأداة تُخرج SHA3-256: دائماً 64 حرفاً سداسياً بالضبط (256 بت = 32 بايت). تُعيِّر NIST FIPS 202 أيضاً SHA3-224 (56 حرفاً)، SHA3-384 (96 حرفاً)، وSHA3-512 (128 حرفاً) — جميعها تستخدم نفس تقليب Keccak-f[1600] بنسب سرعة/سعة مختلفة. طول المخرجات ثابت بغض النظر عن حجم المدخلات.
- الأداء: js-sha3 محمّلة كسولاً (~10 كيلوبايت)؛ ~150–400 ميغابايت/ثانية في المتصفح
- على عكس مسارات SHA-2 (التي تستخدم Web Crypto API الأصيلة في المتصفح)، لم تُضَف SHA-3 إلى مواصفة Web Crypto. تُحمّل هذه الأداة مكتبة js-sha3 (~10 كيلوبايت مضغوطة) عند الاستخدام الأول، ثم تُخزَّنها مؤقتاً. سرعة معالجة نموذجية: 150–400 ميغابايت/ثانية في جافاسكريبت، مقابل 400–700 ميغابايت/ثانية لـ SHA-256 عبر Web Crypto. لتجزئة النصوص (كيلوبايتات) الفرق غير محسوس.
- المعايير: NIST FIPS 202 (2015)، NIST SP 800-185 (KMAC)، NIST IR 8105
- عُيِّرت في FIPS 202 (أغسطس 2015). تُعرّف NIST SP 800-185 (2016) الدالتَين KMAC128 وKMAC256 — دوال MAC مُفتَّحة قائمة على SHA-3 محصّنة فطرياً ضد امتداد الطول بدون غلاف HMAC. تُوصي NIST IR 8105 بمتغيرات SHA-3 لهامش الأمان بعد الحوسبة الكمومية. معتمدة حالياً لجميع مستويات قوة الأمان حتى 2030 وما بعدها بموجب NIST SP 800-131A Rev 2.
أفضل الممارسات
- لا تخلط بين SHA3-256 وkeccak256 في Ethereum
- فهما خوارزميتان مختلفتان بمخرجات مختلفة لكل مدخلات. تحسب هذه الأداة NIST FIPS 202 SHA3-256 (بايت الحشو 0x06). تستخدم keccak256 في Ethereum حشو Keccak الأصلي (0x01). إذا كنت تحسب تجزئات عناوين Ethereum أو فتحات تخزين EVM أو نتائج keccak256() في Solidity، فأنت بحاجة لأداة خاصة بـ keccak256 — هذه الأداة ستعطيك إجابات خاطئة لتلك الحالات.
- استخدم SHA-3 كتحوّط جنباً إلى جنب مع SHA-256، لا كبديل له
- SHA-3 وSHA-2 يستخدمان تصميمات مختلفة بنيوياً (الإسفنج مقابل Merkle-Damgård). بيان أرشيف ذو تجزئة مزدوجة (SHA-256 + SHA3-256) يوفر دفاعاً متعدد الطبقات: إذا وُجد كسر تحليلي تعموي في بنية إحدى العائلتين، تبقى الأخرى آمنة. للبيانات الأرشيفية طويلة الأمد والسجلات الحكومية، تُوصي NIST بالنظر في هذا النهج المزدوج. للاستخدام اليومي، SHA-256 وحده لا يزال كافياً تماماً.
- فضّل KMAC على HMAC-SHA3-256 لتصميمات MAC المُفتَّحة الجديدة
- تُعرّف NIST SP 800-185 الدالتَين KMAC128 وKMAC256 — دوال MAC مُفتَّحة مُصمَّمة خصيصاً مبنية على SHA-3. لأن بنية الإسفنج محصّنة فطرياً ضد امتداد الطول، KMAC لا تحتاج إلى غلاف التجزئة المزدوجة الذي تتطلبه HMAC للأمان. للبروتوكولات الجديدة التي لديها مرونة في اختيار خوارزمية MAC، KMAC128 (أمان 128 بت) أو KMAC256 (أمان 256 بت) هما أكثر أناقةً وكفاءةً قليلاً من HMAC-SHA3-256.
- استخدم المقارنة بالزمن الثابت عند التحقق من تجزئات SHA-3 في الكود
- عند مقارنة تجزئتَي SHA3-256 في الكود، استخدم دائماً دالة مساواة بالزمن الثابت:
crypto.timingSafeEqual()في Node.js،hmac.compare_digest()في Python،subtle.ConstantTimeCompare()في Go. مساواة السلاسل النصية العادية (=== أو ==) تسرّب معلومات توقيت يمكن أن تُمكّن مهاجماً من إعادة بناء التجزئة المتوقعة بايت بايت. ينطبق هذا بالتساوي على SHA-3 وجميع دوال التجزئة الأخرى.
الأسئلة الشائعة حول SHA-3
هل SHA-3 هو نفسه Keccak؟
0x01؛ NIST SHA-3 (FIPS 202، 2015) تُلحق 0x06. هذا الاختلاف ببايت واحد يعني أن SHA3-256 وKeccak-256 تنتجان مخرجات من 64 حرفاً مختلفة لكل مدخلات. الخوارزميتان متطابقتان بنيوياً في جميع النواحي الأخرى — نفس تقليب Keccak-f[1600] ونفس بنية الإسفنج. عندما يقول شخص ما "Keccak" في سياق Ethereum/سلاسل الكتل، فهو يعني تقريباً دائماً متغيّر الحشو الأصلي قبل FIPS، لا NIST SHA-3. لماذا يستخدم Ethereum keccak256 وليس SHA-3؟
0x01)، بينما تستخدم SHA3-256 من هذه الأداة حشو NIST FIPS 202 (0x06). لا تستخدم هذه الأداة أبداً لاشتقاق عناوين Ethereum أو حساب keccak256 في EVM — ستحصل على نتائج خاطئة. ما هي بنية الإسفنج؟
هل يجب استخدام SHA-3 بدلاً من SHA-2؟
هل SHA-3 أسرع من SHA-256؟
كم طول تجزئة SHA-3 من هذه الأداة؟
هل SHA-3 مقاومة للحوسبة الكمومية؟
ما هي مسابقة NIST SHA-3؟
هل SHA-3 عرضة لهجمات امتداد الطول؟
هل تُرسل بياناتي إلى خادم عند استخدام هذه الأداة؟
أدوات ذات صلة
عرض جميع الأدوات →محلّل JWT — فك ترميز الرموز
أدوات الأمن
فك ترميز رموز JWT أونلاين مع محلّل JWT المجاني. افحص الترويسة والحمولة والتوقيع وانتهاء الصلاحية والخوارزمية والمطالبات فوراً. 100% في المتصفح — رمزك لا يغادر جهازك. بلا تسجيل، بلا تتبّع.
مولّد تجزئة MD5 — فوري ومجاني أونلاين
أدوات الأمن
أنشئ تجزئة MD5 وSHA-256 وSHA-1 وSHA-512 فوراً — أداة مجانية تعمل في متصفّحك بدون تتبّع أو رفع بيانات. الصق النص واحصل على التجزئة في ثانية. جرّبها الآن.
مولّد كلمات مرور عشوائية — قوي وآمن ومجاني
أدوات الأمن
ولّد كلمات مرور عشوائية قوية فوراً — أداة مجانية أونلاين تعمل في متصفّحك فقط. خصّص الطول والأحرف، دُفعات حتى 50 مع تحليل الإنتروبيا. بياناتك لا تغادر جهازك.
مولّد تجزئة SHA-1 (160 بت — إرث)
أدوات الأمن
أنشئ تجزئات SHA-1 في متصفحك — مخرجات سداسية من 40 حرفاً، بدون رفع. أداة إرثية لمعرّفات Git وفحص الشهادات القديمة وعمليات التدقيق. بياناتك لا تغادر جهازك.
مولّد تجزئة SHA-256 وأداة المجموع الاختباري
أدوات الأمن
أنشئ تجزئات SHA-256 أونلاين مجاناً. جزّئ النصوص والملفات في متصفحك، تحقق من المجاميع الاختبارية، وانسخ مخرجات سداسية من 64 حرفاً. بدون تسجيل؛ بياناتك لا تغادر الصفحة.
مولّد تجزئة SHA-384
أدوات الأمن
أنشئ تجزئات SHA-384 أونلاين — مخرجات سداسية 96 حرفاً، محصّنة ضد امتداد الطول، متوافقة مع NSA Suite B. مزدوجة مع AES-256-GCM في TLS. جميع عمليات التجزئة في متصفحك عبر Web Crypto API.