ماشین حساب کد هش Snefru-256
منتشر شده: ۱۷ فوریهٔ ۲۰۲۵ ساعت ۱۷:۴۰:۵۳ (UTC)
ماشین حساب کد هش که از تابع هش Snefru 256 بیتی (Snefru-256) برای محاسبه کد هش بر اساس ورودی متن یا آپلود فایل استفاده می کند.Snefru-256 Hash Code Calculator
تابع هش Snefru یک تابع هش رمزنگاری است که توسط رالف مرکل در سال 1990 طراحی شد. در ابتدا به عنوان بخشی از ارسال به موسسه ملی استانداردها و فناوری (NIST) در طول تلاش های اولیه برای استانداردسازی الگوریتم های هش ایمن در نظر گرفته شده بود. در حالی که امروزه به طور گسترده مورد استفاده قرار نمی گیرد، اسنفرو بسیار مهم است زیرا ایده هایی را معرفی کرد که بر طراحی های رمزنگاری بعدی تأثیر گذاشت.
اسنفرو در ابتدا از اندازه های خروجی متغیر پشتیبانی می کرد، اما نسخه ارائه شده در اینجا یک خروجی 256 بیتی (32 بایت) تولید می کند که معمولاً به صورت یک عدد 64 رقمی هگزادسیمال تجسم می شود.
افشای کامل: من پیاده سازی خاصی از تابع هش مورد استفاده در این صفحه را ننوشتم. این یک تابع استاندارد است که در زبان برنامه نویسی PHP گنجانده شده است. من فقط رابط وب را ایجاد کردم تا برای راحتی در اینجا در دسترس عموم قرار دهم.
درباره الگوریتم هش اسنفرو
من ریاضی دان و رمزنگار نیستم، اما سعی می کنم این تابع هش را به گونه ای توضیح دهم که برای همکارهای غیرریاضی ام قابل درک باشد. اگر توضیح علمی و سنگین ریاضی را ترجیح می دهید، مطمئن هستم که می توانید آن را در جای دیگری پیدا کنید ;-)
اگرچه اسنفرو دیگر امن و مناسب برای سیستمهای جدید در نظر گرفته نمیشود، اما به دلایل تاریخی جالب است، زیرا طراحیهای آن بر بسیاری از توابع هش بعدی که هنوز در حال استفاده هستند، تأثیر گذاشته است.
میتوانید اسنفرو را مانند یک مخلوطکن پرقدرت تصور کنید که برای مخلوط کردن و خرد کردن مواد تا زمانی که دیگر نتوانید ورودی اصلی را شناسایی کنید، تصور کنید، اما مانند همه عملکردهای هش، همیشه خروجی یکسانی را برای همان ورودی ارائه میدهد.
این یک فرآیند سه مرحله ای است:
مرحله 1: مواد را خرد کنید (داده های ورودی)
- ابتدا مواد خود را به تکه های کوچکتر برش دهید تا در مخلوط کن جا بیفتند. این مانند شکستن داده ها به بلوک است.
مرحله 2: مخلوط کردن دور (مخلوط کننده با سرعت های مختلف)
- اسنفرو فقط یک بار ترکیب نمی شود. چندین دور مخلوط کردن را انجام می دهد - مانند جابجایی بین خرد کردن، پوره کردن، و ضربان دادن - تا مطمئن شود همه چیز به خوبی مخلوط شده است.
- در هر دور، مخلوط کن:
- در جهت های مختلف (مانند برعکس کردن اسموتی) هم بزنید.
- "پیچش" های مخفی را اضافه می کند (مانند پاشش های کوچک طعم های تصادفی) تا پیش بینی ترکیب را حتی سخت تر کند.
- سرعت را تغییر می دهد تا هر بار به صورت متفاوت هم بزنید.
مرحله 3: اسموتی نهایی (The Hash)
- پس از 8 دور فشرده مخلوط کردن، اسموتی نهایی را بریزید. این هش است - مخلوطی با ظاهر منحصربفرد که کاملاً مخلوط شده است.