مولّد تجزئة SHA-512

إنشاء تجزئة SHA-512 من أي نص

نص الإدخال

يعمل محليًا · آمن للصق الأسرار

تجزئة SHA-512

ستظهر تجزئة SHA-512 هنا…

ما هي تجزئة SHA-512؟

SHA-512 دالة تجزئة تشفيرية مُعرَّفة في معيار NIST FIPS 180-4 بوصفها أكبر عضو في عائلة SHA-2. تقبل مدخلاً بطول اعتباطي وتُنتج ملخصاً ثابتاً بحجم 512 بت (64 بايت)، يُعرض كسلسلة من 128 حرفاً سداسيَّ عشري. تُستخدم SHA-512 في التوقيعات الرقمية (تعتمد Ed25519 داخلياً على SHA-512)، وبناءات HMAC، والتحقق من سلامة الملفات، والبروتوكولات التشفيرية التي تستفيد من هامش أمان واسع.

تعمل SHA-512 على كتل بحجم 1024 بت (128 بايت) باستخدام حساب على كلمات 64 بت وثمانين جولة ضغط. قيم التجزئة الأولية الثمانية مشتقة من الأجزاء الكسرية للجذور التربيعية للأعداد الأولية الثمانية الأولى، وثوابت الجولات الثمانون مشتقة من الجذور التكعيبية لأول ثمانين عدداً أولياً. ولأنها تستخدم عمليات 64 بت الأصلية، كثيراً ما تكون SHA-512 أسرع من SHA-256 على المعالجات الحديثة ذات 64 بت، رغم إنتاجها ملخصاً أطول.

SHA-384 وSHA-512/224 وSHA-512/256 جميعها متغيرات مختصرة من SHA-512 تشترك في البنية الداخلية ذاتها مع اختلاف قيم التجزئة الأولية وعدد أقل من بتات المخرج. عندما تحتاج إلى أقصى طول ملخص تُقدمه عائلة SHA-2، أو حين يفرض بروتوكول معين SHA-512 (كـ Ed25519 أو بعض مخططات اشتقاق المفاتيح القائمة على HMAC)، فإن SHA-512 هي الخيار الصحيح. توفر 256 بتاً من مقاومة التصادم، مساوية لـ SHA-3-512 وفائقة بكثير للحد البالغ 128 بتاً في SHA-256.

لماذا تستخدم مولّد SHA-512 هذا؟

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

حساب فوري في المتصفح
الصق أو اكتب أي نص واحصل على تجزئة SHA-512 الكاملة المؤلفة من 128 حرفاً فوراً. تتولى Web Crypto API الحساب بشكل أصلي دون أي تحميل زائد من مكتبة JavaScript.
🔒
تجزئة تُقدّم الخصوصية أولاً
مدخلاتك لا تغادر جهازك أبداً. تعمل جميع عمليات التجزئة محلياً عبر Web Crypto API المدمجة في المتصفح. لا تُرسَل أي بيانات إلى أي خادم ولا تُسجَّل ولا تُخزَّن.
📋
مخرجات جاهزة للنسخ
احصل على تجزئة SHA-512 بصيغة سداسية بأحرف صغيرة أو كبيرة بنقرة واحدة. مفيد عند مطابقة مجاميع التحقق من مديري الحزم أو بيانات SBOM أو وثائق الأمان.
🔍
بدون حساب أو تثبيت
يعمل في أي متصفح حديث — Chrome وFirefox وSafari وEdge. لا تسجيل، لا إضافة، لا إعداد CLI مطلوب. افتح الصفحة وابدأ التجزئة.

حالات استخدام مولّد تجزئة SHA-512

مطور واجهة أمامية — تصحيح توقيعات Ed25519
تستخدم Ed25519 SHA-512 داخلياً لاشتقاق مفتاح التوقيع وحساب ملخصات الرسائل. أنشئ تجزئات SHA-512 لحمولات الاختبار للتحقق من القيم الوسيطة عند تطبيق أو تصحيح سير عمل توقيع Ed25519.
مهندس خلفية — التحقق من صحة HMAC-SHA512
تستخدم أنظمة Webhook ومخططات مصادقة API (OAuth 1.0a وبعض بوابات الدفع) HMAC-SHA512 لتوقيع الرسائل. احسب تجزئات SHA-512 المرجعية للتحقق المتقاطع من تطبيق HMAC أثناء التطوير.
DevOps — التحقق من البرامج الثنائية والحزم
تحقق من مجاميع تحقق SHA-512 للبرامج الثنائية المُنزَّلة وصور الحاويات أو البرامج الثابتة قبل النشر في الإنتاج. توفر كثير من توزيعات Linux مجاميع تحقق SHA-512 إلى جانب صور ISO الخاصة بها.
مهندس ضمان جودة — التحقق من متجهات الاختبار FIPS 180-4
قارن مخرجات SHA-512 بمتجهات اختبار NIST من برنامج التحقق من صحة الخوارزميات التشفيرية (CAVP) للتأكد من أن تطبيق التجزئة لديك يتعامل بشكل صحيح مع الحشو وحالات الحافة.
مهندس بيانات — بصمة المفاتيح الكبيرة
جزّئ المفاتيح المركّبة أو حمولات السجلات الكبيرة بـ SHA-512 لإنشاء بصمات حتمية لإلغاء التكرار في مسارات بيانات. يُقلل مخرج 512 بت من خطر التصادم حتى عبر مليارات السجلات.
طالب — استكشاف تأثير الانهيار
غيّر حرفاً واحداً في المدخل وراقب كيف يتغير مخرج SHA-512 الكامل المؤلف من 128 حرفاً بصورة غير متوقعة. يوضح ذلك خاصية الانهيار التي تجعل دوال التجزئة مفيدة في التشفير.

مقارنة متغيرات عائلة SHA-2

تنتمي SHA-512 إلى عائلة SHA-2 المُعرَّفة في FIPS 180-4. يقارن الجدول أدناه متغيرات SHA-2 التي تشترك مع SHA-512 في البنية الداخلية ذات 64 بت، مع SHA-256 كمرجع.

المتغيرحجم الملخصطول السداسي العشريالحجم بالبايتالأنسب لـ
SHA-256256 bits64 hex chars32 bytesTLS certificates, blockchain, JWTs, SRI
SHA-384384 bits96 hex chars48 bytesTLS 1.3 CertificateVerify, CNSA/Suite B
SHA-512512 bits128 hex chars64 bytesDigital signatures, HMAC, Ed25519, file integrity
SHA-512/224224 bits56 hex chars28 bytesSHA-512 speed on 64-bit CPUs, 224-bit output
SHA-512/256256 bits64 hex chars32 bytesSHA-512 speed on 64-bit CPUs, 256-bit output

SHA-512 مقابل SHA-256 مقابل SHA-384 مقابل SHA-3-512

يعتمد اختيار خوارزمية التجزئة المناسبة على متطلبات الأمان وقيود الأداء ومواصفات البروتوكول. توفر SHA-512 أوسع ملخص في عائلة SHA-2 وكثيراً ما تكون أسرع من SHA-256 على الأجهزة ذات 64 بت. تشمل هذه المقارنة الخصائص الأكثر أهمية عند الاختيار بينها.

الخاصيةSHA-512SHA-256SHA-384SHA-3-512
Digest size512 bits (128 hex)256 bits (64 hex)384 bits (96 hex)512 bits (128 hex)
Block size1024 bits512 bits1024 bits1600 bits (sponge)
Word size64 bits32 bits64 bitsN/A (sponge)
Rounds80648024
Collision resistance2^256 operations2^128 operations2^192 operations2^256 operations
Security statusSecureSecureSecureSecure
StandardFIPS 180-4FIPS 180-4FIPS 180-4FIPS 202
Web Crypto APIYesYesYesNo
64-bit optimizedYesNo (32-bit words)YesYes
Primary use todayEd25519, HMAC, file checksumsTLS, blockchain, SRITLS 1.3, CNSABackup standard

كيف تعمل SHA-512 داخلياً؟

تعالج SHA-512 المدخل عبر بناء Merkle–Damgård باستخدام كتل بحجم 1024 بت. تُهيّئ ثمانية كلمات حالة بحجم 64 بت (H0–H7) من الأجزاء الكسرية للجذور التربيعية للأعداد الأولية الثمانية الأولى. تمر كل كتلة بثمانين جولة خلط تستخدم عمليات بتية (AND وXOR وNOT والتدوير الأيمن والإزاحة الأيمن) على كلمات 64 بت، مقترنة بثمانين ثابتاً للجولات مشتقة من الجذور التكعيبية لأول ثمانين عدداً أولياً.

Input: "hello world"
SHA-512: 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f
989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f
(512 bits = 64 bytes = 128 hex characters)
الخطوةالوصف
PaddingAppend a 1-bit, then zeros until the message length is 896 mod 1024. Append the original length as a 128-bit big-endian integer.
Block splittingDivide the padded message into 1024-bit (128-byte) blocks.
Message scheduleExpand each 16-word (64-bit) block into 80 words using sigma functions with right-rotate and right-shift operations on 64-bit values.
CompressionProcess 80 rounds per block using Ch, Maj, and two Sigma functions with 80 round constants derived from the cube roots of the first 80 primes.
OutputConcatenate the eight 64-bit state words (H0–H7) into a 512-bit (64-byte) digest, rendered as 128 hexadecimal characters.

حجم الكلمة الأوسع البالغ 64 بت هو المُمَيِّز الرئيسي عن SHA-256. على المعالجات ذات 64 بت، تعالج كل عملية ضعف عدد البتات في كل دورة، وهذا سبب تفوق SHA-512 أحياناً على SHA-256 في الاختبارات المعيارية رغم تشغيلها ثمانين جولة بدلاً من 64. يضمن تأثير الانهيار أن قلب بت إدخال واحد يغيّر نحو 50% من جميع بتات المخرج الـ 512.

أمثلة كود SHA-512

SHA-512 مدعومة بشكل أصلي في كل لغة وبيئة تشغيل رئيسية. توفرها Web Crypto API في المتصفحات دون الحاجة إلى أي مكتبة. تغطي الأمثلة أدناه الأنماط الشائعة بما فيها معالجة Unicode وتجزئة الملفات.

JavaScript (Web Crypto API)
// Works in all modern browsers and Node.js 18+
async function sha512(text) {
  const data = new TextEncoder().encode(text)
  const hashBuffer = await crypto.subtle.digest('SHA-512', data)
  const hashArray = Array.from(new Uint8Array(hashBuffer))
  return hashArray.map(b => b.toString(16).padStart(2, '0')).join('')
}

await sha512('hello world')
// → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f"

// Node.js (built-in crypto module)
const crypto = require('crypto')
crypto.createHash('sha512').update('hello world').digest('hex')
// → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f"
Python
import hashlib

# Basic SHA-512 hash
result = hashlib.sha512(b'hello world').hexdigest()
print(result)
# → "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee..."

# Hash a string with Unicode (encode to bytes first)
text = 'café ☕'
hashlib.sha512(text.encode('utf-8')).hexdigest()
# → 128-character hex string

# Hash a large file in chunks (memory-efficient)
with open('release.tar.gz', 'rb') as f:
    sha = hashlib.sha512()
    for chunk in iter(lambda: f.read(8192), b''):
        sha.update(chunk)
    print(sha.hexdigest())
Go
package main

import (
    "crypto/sha512"
    "fmt"
)

func main() {
    data := []byte("hello world")
    hash := sha512.Sum512(data)
    fmt.Printf("%x\n", hash)
    // → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f...
}
CLI (Linux / macOS)
# Using sha512sum (Linux) or shasum (macOS)
echo -n "hello world" | sha512sum
# → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee...  -

# macOS
echo -n "hello world" | shasum -a 512
# → 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee...  -

# Verify a file checksum
echo "309ecc48...  myfile.bin" | sha512sum -c
# → myfile.bin: OK

# Using openssl (cross-platform)
echo -n "hello world" | openssl dgst -sha512
# → SHA2-512(stdin)= 309ecc489c12d6eb4cc40f50c902f2b4...

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

هل SHA-512 أكثر أماناً من SHA-256؟
توفر SHA-512 مقاومة تصادم بمقدار 256 بت مقارنةً بـ 128 بت في SHA-256، استناداً إلى حد هجوم عيد الميلاد الذي يساوي نصف طول الملخص. لمقاومة الصورة الأصلية، تُقدّم SHA-512 حماية بمقدار 512 بت مقابل 256 بت. كلتاهما تُعدّ آمنة في مواجهة جميع الهجمات المعروفة حتى عام 2026، لكن SHA-512 توفر هامش أمان أوسع. من الناحية العملية، فإن 128 بتاً من مقاومة التصادم التي توفرها SHA-256 تتجاوز بكثير ما يمكن كسره حسابياً.
هل SHA-512 أبطأ من SHA-256؟
على المعالجات ذات 64 بت، عادةً ما تكون SHA-512 أسرع من SHA-256 لأنها تعمل على كلمات 64 بت الأصلية. على الأنظمة ذات 32 بت أو المدمجة، تكون SHA-512 أبطأ لأن كل عملية 64 بت تحتاج إلى محاكاتها بتعليمات متعددة ذات 32 بت. لمعظم معالجات سطح المكتب والخوادم والأجهزة المحمولة الحديثة (جميعها 64 بت)، تُقدّم SHA-512 إنتاجية مساوية أو أفضل من SHA-256.
ما الفرق بين SHA-512 وSHA-512/256؟
تستخدم SHA-512/256 الخوارزمية الداخلية ذاتها كـ SHA-512 (كتل 1024 بت، 80 جولة، كلمات 64 بت) لكنها تبدأ بقيم تجزئة أولية مختلفة وتختصر المخرج إلى 256 بت. يمنحك ذلك سرعة SHA-512 على الأجهزة ذات 64 بت مع مخرج بحجم SHA-256. كما تقاوم SHA-512/256 بطبيعتها هجمات تمديد الطول لأن الاختصار يُهمل الحالة الداخلية التي سيحتاجها المهاجم.
لماذا تستخدم Ed25519 خوارزمية SHA-512؟
تستخدم مخطط توقيع Ed25519 خوارزمية SHA-512 في موضعين: أولاً لاشتقاق المقياس المُوقِّع ذي 256 بت وبادئة nonce من البذرة الخاصة ذات 32 بايت، وثانياً لتجزئة الرسالة أثناء التوقيع. اختيرت SHA-512 لأنها تُنتج مخرجاً بحجم 512 بت يمكن تقسيمه إلى نصفين كل منهما 256 بت، وعملياتها ذات 64 بت تتوافق مع حساب المنحنى ذي 255 بت في Curve25519.
هل يمكن عكس SHA-512 لاسترداد المدخل الأصلي؟
لا. SHA-512 دالة أحادية الاتجاه بمقاومة صورة أصلية بمقدار 512 بت. لا توجد طريقة معروفة لاسترداد المدخل أسرع من البحث بالقوة الغاشمة عبر 2^512 احتمالاً، وهو عدد أكبر من الذرات المقدَّرة في الكون المرئي. غير أن المدخلات القصيرة أو المتوقعة يمكن إيجادها باستخدام هجمات القاموس، ولهذا ينبغي استخدام خوارزميات اشتقاق مفاتيح مخصصة كـ bcrypt أو Argon2 عوضاً عن SHA-512 الخام لكلمات المرور.
هل SHA-512 مدعومة في Web Crypto API؟
نعم. تُطبّق جميع المتصفحات الحديثة SHA-512 عبر crypto.subtle.digest('SHA-512', data). هذه هي نفس API التي تستخدمها هذه الأداة. وهي متاحة أيضاً في Node.js 18+ وDeno وBun. تُعيد Web Crypto API قيمة ArrayBuffer تحوّلها إلى سلسلة سداسية بتعيين كل بايت إلى تمثيله المكوّن من حرفين سداسيَّين.
متى يجب أن أستخدم SHA-512 بدلاً من SHA-256؟
استخدم SHA-512 حين يفرضها بروتوكول معين (Ed25519 أو بعض مخططات HMAC)، أو حين تحتاج إلى أكثر من 128 بت من مقاومة التصادم، أو حين تعمل على أجهزة ذات 64 بت وتريد أقصى إنتاجية. كذلك تُفضَّل SHA-512 لمجاميع تحقق سلامة الملفات حين يكون الملخص الأطول مقبولاً، إذ يُقلل فضاء التجزئة الأوسع من احتمال التصادمات العرضية في مجموعات البيانات الضخمة جداً. لمعظم تطبيقات الويب والواجهات البرمجية وTLS، تبقى SHA-256 الخيار المعياري الافتراضي.