Miklix

ماشین حساب کد هش CRC-32

منتشر شده: ۱۷ فوریهٔ ۲۰۲۵ ساعت ۱۸:۱۳:۱۰ (UTC)

ماشین حساب کد هش که از تابع هش CRC-32 (بررسی افزونگی چرخه ای 32 بیتی) برای محاسبه کد هش بر اساس ورودی متن یا آپلود فایل استفاده می کند.

این صفحه ماشینی از انگلیسی ترجمه شد تا در دسترس هر چه بیشتر مردم باشد. متأسفانه، ترجمه ماشینی هنوز یک فناوری کامل نشده است، بنابراین ممکن است خطاهایی رخ دهد. در صورت تمایل می توانید نسخه اصلی انگلیسی را در اینجا مشاهده کنید:

CRC-32 Hash Code Calculator

بررسی افزونگی چرخه ای (CRC) یک کد تشخیص خطا است که معمولاً برای تشخیص تغییرات تصادفی داده های خام استفاده می شود. در حالی که از نظر فنی یک تابع هش رمزنگاری نیست، CRC-32 به دلیل توانایی آن در تولید خروجی با اندازه ثابت (32 بیت) از ورودی با طول متغیر، اغلب به عنوان هش نامیده می شود.

افشای کامل: من پیاده سازی خاصی از تابع هش مورد استفاده در این صفحه را ننوشتم. این یک تابع استاندارد است که در زبان برنامه نویسی PHP گنجانده شده است. من فقط رابط وب را ایجاد کردم تا برای راحتی در اینجا در دسترس عموم قرار دهم.


هش کد جدید را محاسبه کنید

داده های ارسال شده یا فایل های آپلود شده از طریق این فرم تنها تا زمانی که برای تولید کد هش درخواستی طول می کشد، در سرور نگهداری می شوند. بلافاصله قبل از بازگرداندن نتیجه به مرورگر شما حذف می شود.

داده های ورودی:



متن ارسالی دارای کد UTF-8 است. از آنجایی که توابع هش بر روی داده‌های باینری کار می‌کنند، نتیجه متفاوت از زمانی است که متن در کدگذاری دیگری باشد. اگر نیاز به محاسبه هش یک متن در یک رمزگذاری خاص دارید، باید به جای آن یک فایل آپلود کنید.



درباره الگوریتم هش CRC-32

من یک ریاضیدان نیستم، اما سعی می کنم این تابع هش را با یک قیاس ساده توضیح دهم. برخلاف بسیاری از توابع هش رمزنگاری، این یک الگوریتم پیچیده نیست، بنابراین احتمالاً مشکلی ندارد ;-)

تصور کنید نامه‌ای را از طریق پست می‌فرستید، اما نگران هستید که قبل از رسیدن به دست گیرنده، آسیب ببیند. بر اساس محتوای نامه، یک CRC-32 را محاسبه می‌کنید و آن را روی پاکت می‌نویسید. هنگامی که گیرنده نامه را دریافت می کند، سپس می تواند مبلغ چک را نیز محاسبه کند و ببیند آیا با آنچه شما نوشته اید مطابقت دارد یا خیر. اگر اینطور باشد، نامه در طول مسیر آسیبی ندیده یا تغییر نکرده است.

روشی که CRC-32 این کار را انجام می دهد یک فرآیند چهار مرحله ای است:

مرحله 1: اضافه کردن مقداری فضای اضافی (بالشتک)

  • CRC کمی فضای اضافی در انتهای پیام اضافه می کند (مانند بسته بندی بادام زمینی در یک جعبه).
  • این به آن کمک می کند تا خطاها را راحت تر تشخیص دهد.

مرحله 2: خط کش جادویی (چند جمله ای)

  • CRC-32 از یک "خط کش جادویی" ویژه برای اندازه گیری داده ها استفاده می کند.
    • این خط کش را مانند الگوی برآمدگی ها و شیارها در نظر بگیرید (این چند جمله ای است، اما نگران آن کلمه نباشید).
    • رایج ترین "خط کش" برای CRC-32 یک الگوی ثابت است.

مرحله 3: کشیدن خط کش (فرایند تقسیم)

  • اکنون CRC خط کش را روی پیام می کشاند.
    • در هر نقطه، بررسی می کند که آیا برآمدگی ها و شیارها در یک راستا قرار دارند یا خیر.
    • اگر آنها در یک ردیف قرار نگیرند، CRC یادداشت می‌کند (این کار با استفاده از XOR ساده، مانند روشن یا خاموش کردن کلیدها انجام می‌شود).
    • به لغزش و چرخاندن سوئیچ ها ادامه می دهد تا به انتهای آن برسد.

مرحله 4: نتیجه نهایی (چک جمع)

  • پس از کشیدن خط کش روی کل پیام، یک عدد کوچک (طول 32 بیت) باقی می ماند که نشان دهنده داده های اصلی است.
    • این شماره مانند یک اثر انگشت منحصر به فرد برای پیام است.
    • این چکسام CRC-32 است.

نسخه ارائه شده در صفحه عملکرد اصلی CRC-32 است که باید برای بهترین سازگاری با سایر سیستم ها از آن استفاده کنید.

من ماشین حساب برای انواع دیگر نیز دارم:

در Bluesky به اشتراک بگذاریددر فیسبوک به اشتراک بگذاریددر لینکدین به اشتراک بگذاریددر Tumblr به اشتراک بگذاریددر X به اشتراک بگذاریددر لینکدین به اشتراک بگذاریدپین در پینترست

میکل بنگ کریستنسن

درباره نویسنده

میکل بنگ کریستنسن
مایکل خالق و صاحب miklix.com است. او بیش از 20 سال تجربه به عنوان یک برنامه نویس حرفه ای کامپیوتر / توسعه دهنده نرم افزار دارد و در حال حاضر به طور تمام وقت برای یک شرکت بزرگ فناوری اطلاعات اروپایی مشغول به کار است. هنگامی که وبلاگ نویسی نمی کند، اوقات فراغت خود را صرف مجموعه وسیعی از علایق، سرگرمی ها و فعالیت ها می کند، که ممکن است تا حدی در موضوعات مختلف پوشش داده شده در این وب سایت منعکس شود.