الگوریتم Scrypt چیست؟
Scrypt یکی از الگوریتمهای مورد استفاده در استخراج ارزهای دیجیتال است. این الگوریتم یکی از اولین الگوریتمهای هش میباشد که بر روی بستر بلاکچین پیادهسازی میشود. اسکریپت یک الگوریتم هشینگ در مکانیزم اجماع اثبات کار (Proof of Work) است که جایگزینی برای الگوی هشینگ SHA-256 استفاده شده در فرآیند استخراج بیت کوین محسوب میشود.
مثل اکثر روشهای استخراج ارز دیجیتال، اسکریپت ماینینگ شامل حل مسائل پیچیده ریاضی و کدهای رمزنگاری شده در بلاکچینهای پشتیبان این الگو میباشد که در جهت افزودن بلاکهای جدید به شبکه و کسب پاداش، مورد استفاده قرار میگیرد.
ویژگیهای الگوریتم هش Scrypt
از ویژگیهای اصلی این الگوریتم که باعث تفاوت آن نسبت به دیگر الگوریتمهای موجود میشود، عبارت است از:
امنیت بالا: Scrypt به دلیل استفاده از حجم زیادی از حافظه به منظور ایجاد هش، امنیت بیشتری را نسبت به الگوریتمهای هش معمولی در بردارد. همچنین این الگوریتم از تابعهای هش ایمن مانند SHA-256 و SHA-3 برای ایجاد هش استفاده میکند که به نوبه خود، امنیت آن را افزایش میدهد.
سرعت کمتر: به دلیل نیاز اسکریپت به مقدار زیادی حافظه، این الگوریتم ممکن است در صورت عدم تهیه فضای کافی نسبت به دیگر الگوریتمهای هش معمولی مانند SHA-256، کندتر عمل کند. این ویژگی باعث این شده است تا Scrypt بیشتر برای استفاده در سیستمهای احراز هویت دو مرحلهای و همچنین، استخراج ارز دیجیتال به کار گرفته شود.
کارایی: تابع اسکریپت در مقایسه با پیچیدگی کاری که انجام میدهد، بار کاری کمی دارد. استفاده از یک کلید، موازیسازی فرآیندها، تولید اعداد تصادفی و همچنین توانایی تعدیل مقادیر تابع بدون به خطر انداختن امنیت، باعث افزایش کارایی اسکریپت میشود.
کارکرد الگوریتم اسکریپت چگونه است؟
از آنجایی که الگوریتم Scrypt برای ایجاد هش از مقدار زیادی حافظه استفاده میکند؛ به دلیل این ویژگی، کارکرد آن با الگوریتمهای هش معمولی متفاوت است.
مراحل کارکرد الگوریتم Scrypt به این شکل است:
۱. تعیین پارامترها: در ابتدا باید پارامترهای الگوریتم، شامل تعداد مراحل محاسباتی، تعداد بلاکهای حافظه و تعداد مراحل پردازشی در هر بلاک تعیین شود. این پارامترها برای هر مورد استفاده از الگوریتم Scrypt در نظر گرفته میشوند.
۲. تولید بلاکهای حافظه: در این بخش برای هر بیت از دادههای ورودی، یک بلاک حافظه تولید میگردد. در واقع هر بلاک حافظه شامل تعدادی کلمه ۸ بایتی است که به صورت تصادفی تولید شدهاند.
۳. اجرای مراحل پردازشی: این مرحله مربوط به محاسبات هش است. در این مرحله برای هر بلاک حافظه، یک ماتریس ۸ در ۱۶ ایجاد میشود که هر سطر آن شامل ۸ کلمه ۸ بایتی است.
۴. ترکیب نتایج: در این مرحله، نتایج حاصل از مراحل پردازش با هم ترکیب میشوند تا هش نهایی حاصل شود.
عملکرد الگوریتم Scrypt در بلاکچین
خلاصه عملکرد الگوریتم اسکریپت در بلاکچین را میتوان در موارد زیر بیان کرد:
- پیچیدگی کمتر در مقایسه با سایر الگوریتمهای استخراج در بلاکچین
- شیوهای مناسب برای رمزگذاری کیف پول، فایلها و رمزهای عبور مختص بلاکچین
- استخراج سریع ارزهای دیجیتال در بلاکچین
- کارمزد کمتر برای تراکنشهای بستر بلاکچین
- کاهش مصرف انرژی در مقایسه با سایر الگوریتمهای بلاکچین مانند SHA-256
منبع: سایت کریپتونگار