الگوریتم sha-256 عضوی از خانواده توابع هشینگ رمزگذاری sha-2 است. کلمه sha-256، مخفف عبارت “secure hash algorithm” (یعنی الگوریتم هشینگ امن) میباشد. منظور از توابع هشینگ رمزنگاری، نوعی از عملیات ریاضی هستند که بر روی دیتای دیجیتال اجرا میشوند.
در این ساختار، یک نفر با مقایسه هش بدست آمده (خروجی الگوریتم اعمال شده) با مقدار هش از قبل پیشبینی شده، میتواند به جامعیت دیتای موجود پی ببرد. روش اعمال sha-256 به صورت یک طرفه است. بدین صورت که هش مدنظر ما با اعمال الگوریتم بر روی دیتا بدست میآید ولی ما نمیتوانیم از روی همین هشی که در اختیار داریم، دیتای اصلی را تشخیص داده و به آن برسیم.
به طوری که از این نوع از الگوریتمها، بیشتر برای تغییر ساختار دیتا و نامشخص کردن آن برای دسترسی افراد غیر مجاز استفاده میشود.
تاریخچه sha-256
sha-256، جانشین مدل قبلی از الگوریتم خانواده خود، یعنی sha-1 شده است. البته اینکد کردن آن، چندان سختتر از sha-1 نمیباشد. از الگوریتم sha-256، بیشتر در راستای ساخت و احراز هویت ارتباطات ایمن (در بستر اینترنت برای وبسایتها و یا وبسرویسها) استفاده میشود.
همچنین باید گفت که در دنیای ارزهای دیجیتال نیز از الگوریتم sha-256 به عنوان الگوریتم ماینینگ و هشینگ ارزهای دیجیتالی مانند بیتکوین (در قالب اثبات کار) استفاده میشود. در کنار آن، از sha-256 در راستای تولید آدرسهای بیتکوین هم استفاده میشود. در نظر داشته باشید که بکارگیری این الگوریتم، باعث افزایش امنیت و حریم خصوصی در شبکه بیتکوین شده است.
ورژن اولیه از این الگوریتم در بهار سال ۲۰۰۲ به وجود آمده است.
برخی از ویژگیهای بارز الگوریتم sha-256 به صورت زیر میباشد.
- شاخص اندازه بلاک: ۶۴ بایت
- حداکثر طول مجاز برای پیام: ۳۳ بایت
- اندازه مشخصات پیام: ۳۲ بایت
- اندازه استاندارد کلمه: ۴ بایت
- پارامتر اندازه موقعیت درونی: ۳۲ بایت
- تعداد تکرارها در هر دوره: ۶۴
- سرعت رسیده شده توسط پروتکل: تقریباً ۱۴۰ mib/s

