简体中文 Tiếng Việt 日本語 한국어 हिन्दी Español Français العربية বাংলা Português Русский اردو Bahasa Indonesia Deutsch Naijá मराठी తెలుగు Türkçe தமிழ்
// checksum utility
CRC32أداة المجموع الاختباري
جانب العميل فقط
لم يتم إرسال أي بيانات
🔵يتم تشغيل كافة العمليات الحسابيةمحليًا في متصفحك. لا يتم تحميل أي بيانات إلى أي خادم. يدعم متغيرات CRC-32/ISO-HDLC، وCRC-32C، وCRC-32/MPEG-2، وCRC-32/BZIP2.
إعدادات الحساب
CRC البديل ↗
ترميز الإدخال ↗
تنسيق الإخراج ↗
بيانات الإدخال
أسقط ملفًا هنا
جاهز - أدخل البيانات وانقر على "حساب CRC32"
نتائج الحساب
ISO-HDLC
كاستانيولي
MPEG-2
BZIP2
التحقق من المجموع الاختباري
قم بلصق قيمة CRC32 المتوقعة لمقارنتها بالحساب الحالي.
بايت الإدخال
0
الحسابات الإجمالية
0
البديل الحالي
ISO-HDLC
المنقضي (مللي ثانية)
// CRC32 Variant Guide
متغيرات CRC
CRC-32 / ISO-HDLCPKZip · PNG · إيثرنت
التطبيق الأكثر شيوعًا لـ CRC-32، ويُسمى أيضًا CRC-32b. ويستخدم الشكل المنعكس من متعدد الحدود 0x04C11DB7، أي 0xEDB88320. تنعكس البتات في كل من بايت الإدخال والإخراج (LSB أولاً)، مع تعيين القيمة الأولية وXOR النهائية على 0xFFFFFFFF.

يُستخدم على نطاق واسع بواسطة صور ZIP وgzip وPNG وإطارات Ethernet (IEEE 802.3) وPKCS#7 والعديد من الأنظمة القديمة. هذا هو البديل "الافتراضي CRC-32" الفعلي.
كثير الحدود0x04C11DB7(عادي) /0xEDB88320(منعكس)
القيمة الأولية0xFFFFFFFF
انعكاس الإدخالنعم (RefIn = صحيح)
انعكاس الإخراجنعم (RefOut = true)
Final XOR0xFFFFFFFF
تحقق من القيمة0xCBF43926(لـ "123456789")
CRC-32C / كاستانيوليiSCSI · NVMe · SCTP
تم اقتراحه بواسطة G. Castagnoli وزملائه في عام 1993، ويستخدم هذا المتغير متعدد الحدود 0x1EDC6F41 (الشكل المنعكس 0x82F63B78). وعلى نفس مسافة Hamming، فإنه يوفر كشفًا أقوى لخطأ الاندفاع من متعدد الحدود ISO-HDLC.

يتوفر تسريع الأجهزة من خلال تعليمات Intel SSE4.2 وARM CRC32. يُستخدم على نطاق واسع في بروتوكولات التخزين والنقل الحديثة مثل iSCSI وNVMe وBtrfs وSCTP.
كثير الحدود0x1EDC6F41(عادي) /0x82F63B78(منعكس)
القيمة الأولية0xFFFFFFFF
انعكاس الإدخالنعم (RefIn = صحيح)
انعكاس الإخراجنعم (RefOut = true)
Final XOR0xFFFFFFFF
تحقق من القيمة0xE3069283(لـ "123456789")
CRC-32 / MPEG-2MPEG-2 · DVB · ATSC
يستخدم نفس متعدد الحدود 0x04C11DB7 مثل ISO-HDLC، ولكن لا يتم إدخال أو إخراجبت منعكس(MSB أولًا، كبير النهاية). القيمة الأولية هي 0xFFFFFFFF وتم تعطيل XOR النهائي (XorOut = 0x00000000).

يستخدم بشكل أساسي لجداول PSI/SI في تدفقات النقل MPEG-2 (PAT، وPMT، وNIT، والجداول ذات الصلة)، بالإضافة إلى عمليات التحقق من التكامل في أنظمة البث DVB وATSC.
كثير الحدود0x04C11DB7
القيمة الأولية0xFFFFFFFF
انعكاس الإدخاللا (RefIn = خطأ)
انعكاس الإخراجلا (RefOut = خطأ)
Final XOR0x00000000(معطل)
تحقق من القيمة0x0376E6E7(لـ "123456789")
CRC-32 / BZIP2BZip2 · AAL5 · DECT
معلماتها متطابقة تقريبًا مع MPEG-2 (متعدد الحدود 0x04C11DB7، بدون انعكاس، القيمة الأولية 0xFFFFFFFF). الفرق الوحيد هو أfinal XOR مع 0xFFFFFFFF، الذي يقلب كل جزء. ومن المعروف أيضًا باسم CRC-32/AAL5 أو CRC-32/DECT-B.

يُستخدم بواسطة تنسيق الملف المضغوط BZip2 وحقل المجموع الاختباري للمقطورة لبروتوكول ATM AAL5.
كثير الحدود0x04C11DB7
القيمة الأولية0xFFFFFFFF
انعكاس الإدخاللا (RefIn = خطأ)
انعكاس الإخراجلا (RefOut = خطأ)
Final XOR0xFFFFFFFF
تحقق من القيمة0xFC891918(لـ "123456789")
// Input Encoding Guide
ترميز الإدخال
UTF-8 نصافتراضي · عام
يتعامل مع الإدخال باعتباره aUTF-8string، ويحولها إلى بايت، ثم يحسب CRC32. هذا هو الوضع الأكثر شيوعًا للنص العادي والتعليمات البرمجية المصدرية وJSON والمحتوى المشابه.

ملاحظة: نفس النص المشفر بمجموعة أحرف مختلفة مثل GBK أو UTF-16 ينتج عنه تدفق بايت مختلف وبالتالي قيمة CRC32 مختلفة. تستخدم هذه الأداة دائمًا UTF-8.
الأفضل لـنص عادي، كود المصدر، JSON، XML يظهر
مثال"مرحبًا" →48 65 6C 6C 6F(5 بايت)
أحرف CJKتستخدم معظم أحرف CJK 3 بايت في UTF-8
سداسي عشريالبيانات الثنائية · إطارات البروتوكول
يتعامل مع الإدخال على أنه خامحرفية بايت سداسية عشرية. يتم تجاهل المسافات وفواصل الأسطر. يصبح كل حرفين سداسي عشري بايت واحد (00–FF).

مفيد عندما تحتاج إلى عمليات فحص CRC للبيانات الثنائية الدقيقة مثل إطارات الشبكة أو أجزاء صورة البرامج الثابتة أو عمليات تفريغ الذاكرة. يمكنك لصق مخرجات Wireshark أو التفريغ السداسي مباشرة.
التنسيقفقط0-9وa-f / A-Fمسموح بها
عدد الأحرفيجب أن يكون زوجي (حرفين لكل بايت)
مثال48656C6C6F= "مرحبًا" (5 بايت)
مسافة بيضاءتم التجاهل تلقائيًا.48 65 6Cهو نفسه48656C
Base64الثنائي المشفر · الشهادات · الصور
يتعامل مع الإدخال باعتباره aسلسلة مشفرة بـ Base64، يقوم بفك ترميزه إلى بايتات أولية، ثم يقوم بحساب CRC32. مفيد لشهادات PEM وحمولات JWT ومعرفات URI للبيانات ومحتويات Base64 الأخرى.

يدعم الأبجدية Base64 القياسية (A-Z a-z 0-9 + /). حرف الحشو=اختياري. URL الآمن Base64 (-_) غير مدعوم.
الأبجديةA-Z a-z 0-9 + / =
مثالSGVsbG8=→ "مرحبًا" (5 بايت)
URL-آمنغير مدعوم. استبدال-→+و_→/أولاً
⚠ حرف واحدغير صالح — 6 بتات ليست كافية لتكوين بايت واحد (يلزم 8 بتات)
2 أحرفيشفر إلى1 بايت(الحد الأدنى للإدخال الصالح)
3 أحرفيشفر إلى2 بايت
4 أحرفيشفر إلى3 بايت(يتكرر النمط كل 4 أحرف)
// Output Format Guide
تنسيق الإخراج
سداسي عشريالأكثر شيوعًا · الافتراضي
يعرض القيمة كرقم سداسي عشري كبير مكون من 8 أرقام مسبوقًا بـ0x. يمثل كل حرف 4 بتات، أي ما مجموعه 32 بت. هذا هو التنسيق القياسي المستخدم في معظم الأدوات والتعليمات البرمجية المصدرية والوثائق.

بالمقارنة مع المخرجات العشرية، فإن النظام السداسي العشري يجعل حدود البايت أسهل في الفحص ويطابق عمليات تفريغ الذاكرة وحقول البروتوكول بشكل أكثر طبيعية.
مثال0xCBF43926
الطول8 أحرف ست عشرية = 32 بت
Baseالقاعدة 16 (0-9، أ-و)
الأفضل لـالكود، التوثيق، Wireshark، المحررات السداسية
عشريعدد صحيح 32 بت غير موقع
يعرض المجموع الاختباري كـعدد صحيح عشري 32 بت غير موقعفي النطاق 0–4,294,967,295 (2³²−1). تقوم بعض اللغات والأدوات بمقارنة قيم CRC في شكل عشري، وغالبًا ما تقوم حقول قاعدة البيانات بتخزين هذا التمثيل.

ملاحظة: يجب التعامل مع نتائج CRC32 كأعداد صحيحة غير موقعة. في أنواع int الموقعة مثل Java أو C#، قد تظهر القيم الأعلى من 0x7FFFFFFFF سالبة ويجب تحويلها إلى uint أو تمثيل أوسع غير موقع.
مثال3421780262
المدى0–4,294,967,295
ملاحظةبالنسبة لـ Java int، قم بالتحويل باستخدام& 0xFFFFFFFL
الأفضل لـقواعد البيانات، قيم بنية بايثون، المقارنة الرقمية
ثنائيتحليل مستوى البت
يعرض المجموع الاختباري كسلسلة ثنائية 32 بت مسبوقة بـ0b. كل حرف هو 0 أو 1، محاذاة مع البت الأكثر أهمية على اليسار، ومبطن بالأصفار البادئة عند الضرورة.

مفيد بشكل أساسي لفهم خوارزمية CRC الداخلية، ودراسة تقسيم كثيرات الحدود، والتدريس، والسيناريوهات المضمنة التي تحتاج إلى معالجة المجموع الاختباري على مستوى البت.
مثال0b11001011…00100110
الطولتم إصلاحه عند 32 بت مع حشوة صفرية على اليسار
أعلى بتBit 31 (MSB) في أقصى اليسار
الأفضل لـتحليل الخوارزميات، التدريس، تصحيح الأخطاء المضمنة
أوكتالUnix · أنظمة الملفات
يعرض المجموع الاختباري كرقم ثماني مكون من 11 رقمًا مسبوقًا بـ0o. هناك حاجة إلى 11 حرفًا ثمانيًا على الأكثر لـ 32 بت، لأن 3×11 = 33 > 32. يمثل كل رقم ثماني 3 بتات.

يعد الإخراج الثماني غير شائع في سير عمل CRC الحديث، ولكنه لا يزال يظهر في بعض أدوات Unix، وسلاسل أدوات البرامج الثابتة المضمنة، ومواصفات بروتوكول الاتصال الأقدم.
مثال0o31572031046
الطولما يصل إلى 11 رقمًا ثمانيًا
لكل رقميمثل 3 بت (0-7)
الأفضل لـأدوات Unix، مواصفات البروتوكول الأقدم