Miklix

ماشین حساب کد هش MurmurHash3A

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

ماشین حساب کد هش که از تابع هش MurmurHash3A برای محاسبه کد هش بر اساس ورودی متن یا آپلود فایل استفاده می کند.

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

MurmurHash3A Hash Code Calculator

MurmurHash3 یک تابع هش غیر رمزنگاری است که توسط آستین اپلبی در سال 2008 طراحی شد. به دلیل سرعت، سادگی و ویژگی های توزیع خوب، به طور گسترده برای هش کردن همه منظوره استفاده می شود. توابع MurmurHash به ویژه برای ساختارهای داده مبتنی بر هش مانند جداول هش، فیلترهای بلوم، و سیستم‌های حذف مجدد داده‌ها موثر هستند.

نوع ارائه شده در این صفحه، نوع 3A است که برای سیستم های 32 بیتی بهینه شده است. کدهای هش 32 بیتی (4 بایتی) را تولید می کند که معمولاً به صورت یک عدد هگزادسیمال 8 رقمی نشان داده می شود.

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


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

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

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



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



درباره الگوریتم هش MurmurHash3A

من یک ریاضیدان نیستم، اما سعی می کنم این تابع هش را با استفاده از قیاسی توضیح دهم که همکارهای غیرریاضیدانم بتوانند آن را درک کنند. اگر یک توضیح ریاضی از لحاظ علمی صحیح و کامل را ترجیح می دهید، مطمئن هستم که می توانید آن را در جای دیگری پیدا کنید ;-)

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

MurmurHash3 کاری مشابه با داده ها انجام می دهد. هر نوع داده ای (متن، اعداد، فایل ها) را می گیرد و آن را به یک "اثر انگشت" کوچک و ثابت یا مقدار هش کوچک می کند. این اثرانگشت به رایانه‌ها کمک می‌کند تا به سرعت داده‌ها را بدون نیاز به نگاه کردن به همه چیز شناسایی، مرتب‌سازی و مقایسه کنند.

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

مرحله 1: تکه تکه کردن (شکستن داده ها)

  • ابتدا، MurmurHash3 داده های شما را به تکه های مساوی تقسیم می کند، مانند برش دادن کیک به مربع های یکسان.

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

  • هر قطعه یک فرآیند اختلاط وحشی را طی می کند:
    • برگرداندن: مانند چرخاندن پنکیک، تکه ها را دوباره مرتب می کند.
    • هم زدن: مواد تصادفی (عملیات ریاضی) را برای مخلوط کردن همه چیز اضافه می کند.
    • Squishing: داده ها را به هم فشار می دهد تا مطمئن شود هیچ قطعه اصلی برجسته نیست.

مرحله 3: تست طعم نهایی (نهایی)

  • پس از مخلوط کردن همه تکه‌ها، MurmurHash3 یک بار نهایی را به هم می‌زند تا مطمئن شود که حتی کوچک‌ترین تغییر در داده‌های اصلی طعم (هش) را کاملاً تغییر می‌دهد.
در Bluesky به اشتراک بگذاریددر فیسبوک به اشتراک بگذاریددر لینکدین به اشتراک بگذاریددر Tumblr به اشتراک بگذاریددر X به اشتراک بگذاریددر لینکدین به اشتراک بگذاریدپین در پینترست

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

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

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