مولد SHA256

SHA-256 هو النسخة ذات البتات 256 من عائلة SHA-2، ويُعد الخوارزمية الأساسية للهش في التشفير الحديث؛ حيث يُستخدم في حساب هشات كتل بيتكوين، وسجلات TLS 1.3، والتوقيعات JWT HS256، وخصائص سلامة الموارد الفرعية، ومُختارات صور الحاويات. الصق أي مُدخل هنا للحصول على مُوجَز سداسي عشري مكون من 64 حرفًا فورًا. لاحظ أن SHA-256 دالة تجزئة أحادية الاتجاه وليست تشفيرًا: لا يمكنك فك تشفير المُوجَز أو عكسه لاستعادة النص الأصلي.

كيفية إنشاء مُوجَز SHA-256

  1. 1

    أدخل النص

    أي سلسلة نصية بصيغة UTF-8، مثل كلمة مرور، أو ملف تم تحويله إلى نص، أو حمل بيانات بصيغة JSON، أو كتلة بيانات مشفرة من صيغة ثنائية إلى نصية.

  2. 2

    UTF-8 هو ترميز الإدخال

    تُحوَّل السلاسل النصية إلى بايتات من تنسيق UTF-8 قبل عملية التجزئة، بما يتوافق مع جميع مكتبات SHA-256 المستخدمة على نطاق واسع.

  3. 3

    يتم حساب القيمة المختلطة (hash).

    يتم تضخيم الرسالة إلى عدد من البتات يساوي مضاعف 512 بت، ثم تُعالج كتلة تلو الأخرى باستخدام دالة ضغط SHA-256.

  4. 4

    انسخ المُوجَز السداسي العشري المكوَّن من 64 حرفًا.

    يكون الناتج دائمًا 64 حرفًا سداسيًا عشريًا صغيرة (256 بت). انسخه بنقرة واحدة.

حقائق عن SHA-256

الخاصية القيمة
حجم المخرج 256 بت / 64 حرفًا سداسيًا عشريًا
حجم الكتلة 512 بت
عدد الجولات 64
مقاومة الاصطدام حوالي 2^128 عملية (نظريًا)
مقاومة الصورة الأصلية حوالي 2^256 عملية
دعم الأجهزة امتدادات SHA في معالجات إنتل/AMD/ARM (sha256rnds2، sha256h)

أين يظهر SHA-256؟

  • بيتكوين. استخدام Double-SHA-256 (SHA256(SHA256(x))) لرؤوس الكتل والعناوين ومُعرّفات المعاملات (TXIDs).
  • TLS 1.3. تجزئة النص المنقول التي تربط رسائل المصافحة بجدول المفاتيح النهائي.
  • سلامة الموارد الفرعية. تُستخدم السمة integrity="sha256-..." على وسوم <script>، مما يجعل المتصفحات ترفض ملفات CDN المُعدَّلة.
  • JWT. يستخدم HS256 خوارزمية HMAC-SHA-256؛ بينما يستخدم كل من RS256 وES256 خوارزمية SHA-256 مع RSA أو ECDSA.
  • صور الحاويات. تساعد مُختصرات sha256:abc123... في تحديد طبقات الصور عبر مختلف السجلات.
  • العنونة حسب المحتوى. IPFS، وgit (اختياريًا)، وفهارس حزم apt.

ملاحظة صغيرة: أسطر جديدة في نهاية النص

يحسب echo "hello" | sha256sum تجزئة hello\n (ستة بايتات)، وليس خمسة. إذا أعادت أداتك قيمة مختلفة عن هذا المولّد، فتحقق من وجود سطر جديد في النهاية. استخدم echo -n "hello" أو printf "hello" لتجزئة خمسة بايتات بالضبط.

مخرجات Hex مقابل Base64

يُعد تنسيق Hex (64 حرفًا) هو الافتراضي، وهو متوافق مع sha256sum وGit ومعظم الأدوات. أما تنسيق Base64 (44 حرفًا بما في ذلك أحرف الحشو) فيظهر في سلامة الموارد الفرعية، وتوقيعات AWS، وعلامات ETags الخاصة بخدمة S3 عند الرفع متعدد الأجزاء.

الأسئلة الشائعة

ليس كافيًا وحده. فخوارزمية SHA-256 سريعة جدًا، وهو أمر ممتاز لحسابات التحقق من صحة البيانات، لكنها غير مناسبة لتخزين كلمات المرور؛ إذ يمكن للمهاجمين إجراء عمليات تجزئة (hashing) لمليارات البيانات في الثانية باستخدام وحدات معالجة الرسوميات (GPUs). يُستحسن استخدام خوارزميات مثل Argon2id أو bcrypt لتخزين كلمات المرور، بينما تكون خوارزمية SHA-256 مناسبة تمامًا ضمن هياكل التحقق من صحة البيانات (MAC) المبنية على خوارزمية HMAC.

SHA-2 هي عائلة من خوارزميات التشفير تشمل SHA-224 وSHA-256 وSHA-384 وSHA-512، حيث يُعد SHA-256 الطول المحدد للنتيجة النهائية. وعندما يُشار إلى “SHA-2” دون تحديد دقيق، فإن المقصود عادةً هو SHA-256.

ولا يعاني أي منهما من عيوب جوهرية. يستخدم SHA-3 (كيكاك) بنية داخلية مختلفة (تُعرف باسم “الإسفنج”)، وهو ما يشكل وسيلة للحماية ضد الهجمات المفترضة على SHA-2. في الواقع، يتميز SHA-256 بسرعة أكبر على أنظمة إنتل/AMD بفضل التعليمات الأصلية المدمجة فيه؛ بينما يكون SHA-3 أسرع على بعض المنصات المدمجة.

على خادمنا. يُرسَل النص عبر اتصال مشفّر، ويُجزّأ باستخدام دالة SHA-256 القياسية، ثم يُعاد المُوجَز. نحن لا نخزّن ما ترسله. ولأن SHA-256 دالة أحادية الاتجاه، فلا يمكن عكس المُوجَز أو فك تشفيره لاستعادة نص إدخالك.

أدوات ذات صلة

الأداة متاحة بلغات أخرى