الگوریتم استخراج SHA-256 و کاربرد آن

بازدید: 97 بازدید
زمان مطالعه: 5 دقیقه

در میان تعداد زیادی از الگوریتم های پیشرفته در امنیت شبکه، رمزگزاری و هش کردن، الگوریتم امن 256 بیت یا SHA-256 یکی از بهترین و پر کاربردترین موارد در دستگاه ماینر می باشد. در حالی که انواع دیگری از نیز وجود دارد، اما همچنان خط مقدم و پرکاربردترین مورد این مورد می باشد. برای درک عملکرد بهتر آن و کاوش عمیق تر در حوزه امنیت سایبری، ابتدا باید ویژگی های این الگوریتم را بشناسید.

هشینگ چیست؟

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

تابع هش وظیفه تبدیل متن ساده را به هش مربوطه خواهد داشت. این فرایند غیر قابل بازگشت بوده و نباید متن اصلی در اختیار شما قرار بگیرد. توابع هش در صورتی که ورودی بدون تغییر داشته باشند، بدون در نظر گرفتن تعداد تکرارها، همان مقدار خروجی را ارائه خواهند داد.

الگوریتم استخراج ارزدیجیتال

دوکاربرد اصلی هش وجود خواهد داشت:

هش کلمه عبور : در برخی از سرورهای وب سایت ها، کلمه های عبور کاربر قبل از ذخیره سازی در سرور به مقدار هش تبدیل می شود. این مقدار هش محاسبه شده به طور مجدد در زمان وارد شدن به سیستم شما با داده ذخیره شده در دیتابیس، به منظور اعتبار سنجی مقایسه خواهد شد.

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

آشنایی هرچه بیشتر با الگوریتم SHA-256

این الگوریتم بخشی از الگوریتم SHA 2 بوده که در آن SHA مخفف Secure Hash Algorithm می باشد و در سال 2001 بین شرکت های NSA و NIST برای معرفی جانشینی برای خوانواده SHA 1 می‌باشد که به تدریج قدرت خود را در برابر حملات Brute Force از دست خواهد داد. اهمیت عدد 256 در نام آن به معنای مقدار هش نهایی می باشد، یعنی صرف نظر از اندازه متن ، مقدار هش برابر 256 بیت خواهد شد. سایر الگوریتم ها نیز شباهت زیادی به این ساختار دارند، اما کمی بیشتر مورد دستورالعمل های آنها خواهید بود.

ویژگی های SHA-256

طول پیان باید کمتر 264 بیت باشد و اندازه آن باید در ناحیه مقایسه باشد تا مورد هضم آن مقدار تصادفی به نظر برسد.  Digest Length نیز باید 256 بیت در این الگوریتم باشد. بسته های بزرگتر محاسبات بیشتری را به قیمت سرعت و فضا درگیر خواهند کرد. Irreversible : همه توابع هش برگشت ناپذیر خواهند بود و زمانی که به طور خلاصه از آن استفاده می کنید باید متن را دریافت نمایید و اگر دوباره آن را از تابع هش عبور دهید، مقدار اصلی نمایش داده نمی شود.

مراحل اجرا الگوریتم SHA-256

فرایند اجرا آن به 5 بخش مختلف تقسیم می شود که در زیر ذکر شده است:

Padding Bits 

چند بیت اضافی به پیام اضافه شده، به طوری که طول آن دقیقا 64 بیت کمتر از مضرب عدد 512 باشد. در زمان جمع، اولین بیت باید یک باشد و بقیه آن باید با صفر پر گردد.

Padding Length

حال می توانید 64 بیت داده اضافه کرده تا متن نهایی مضرب عدد 512 گردد. این 64 بیت کاراکتر را با اعمال مدول بر روی متن اصلی خود بدون padding محاسبه نمایید.

روند کار الگوریتم SHA-256

اولیه سازی بافرها

مقادیر باید به شکل پیش فرض برای هشت بافر در استفاده در راندها به صورت زیر مقدار دهی می شود : همچنین باید 64 کلید متفاوت را در یک آرایه ذخیره سازی نمایید : از از K[0] تا K[63] که آنها به صورت زیر مقدار دهی خواهند شد.

توابع فشرده سازی

کل پیام بلوک 512 بیتی تقسیم خواهد شد. هر بلوک را در 64 دور عملیاتی قرار می گیرد که خروجی هر بلوک به عنوان ورودی بوک زیر عمل می کند کل فرایند به این شکل است که مقدار K[i] در تمام آن دورها از قبل مقدار دهی می شود و W[i] ورودی دیگری است که به صورت جداگانه برای هر بلوک متناسب با تکرارهای در حال پردازش در لحظه محاسبه می گردد.

خروجی

با هر تکرار خروجی نهایی بلوک به عنوان ورودی بلوک بعدی عمل خواهد کرد و کل چرخه تا زمانی که به آخرین بلوک 512 بیتی برسد تکرار خواهد شد تا خروجی آن را خلاصه هش نهایی در نظر گرفته شود. این خلاصه گویی طبق نام الگوریتم دارای طول 256 بیت خواهد بود. با توجه به اینکه الگوریتم SHA-256 از اوایل دهه 90 به طور کامل پیاده سازی می شود، برنامه های خاصی وجود داشته که می تواند آن را انجام دهد.

برگرفته از : منبع

دسته بندی دسته‌بندی نشده
اشتراک گذاری
نوشته های مرتبط

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

کانال تلگرام ما را دنبال کنید
سبد خرید

هیچ محصولی در سبد خرید نیست.

ورود به سایت