الگوریتم اسکریپت Scrypt در بلاک چین چیست؟

الگوریتم اسکریپت Scrypt در بلاک چین چیست؟

اسکریپت Scrypt از جمله موضوعاتی است که در تمام صنعت کریپتو استفاده می‌شود و ماینرها از آن برای تایید بلاک تراکنش‌ها بهره می‌برند. اسکریپت Scrypt یکی از اولین الگوریتم‌های هش است که در شبکه‌های بلاک چین اجرا شد.

الگوریتم اسکریپت scrypt تلاشی برای بهبود الگوریتم هش قبلی؛ به ویژه الگوریتم SHA-256 است. از اسکریپت در بلاک چین‌های اثبات کار (POW) استفاده می‌شود که اولین بار با راه اندازی Tenebrix (TBX) در سال ۲۰۱۱ معرفی شد.

از آن زمان، الگوریتم اسکریپت Scrypt توسط تعدادی از پروژه‌های مختلف بلاک چین پذیرفته شده است. در میان سه بلاک چین اسکریپت Scrypt بر اساس ارزش بازار، الگوریتم اسکریپت Scrypt از بیش از ۳ میلیارد دلار ارز دیجیتال را پشتیبانی می‌کند.

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

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

در صنعت ماینینگ، رمز ارزهای زیادی بلاک چین اختصاصی خود را معرفی کرده و هر کدام از این بلاک چین‌های جدید با هدف استفاده از تجهیزات خاص نظیر اسیک ماینر (ASIC Miner)، کارت گرافیک (GPU)، پردازنده کامپیوتری (CPU) و FPGAها، الگوریتم منحصربه‌فرد خود را توسعه داده‌اند. مثلا بیت کوین از تابع هش SHA-256 استفاده می‌کند و اتریوم نیز پیش از مهاجرت به مکانیزم اثبات سهام، از الگوریتم هشینگ Ethash بهره می‌برد؛ البته فورک EthereumPoW این شبکه همچنان از این الگوریتم استفاده می‌کند. Scrypt نیز یکی از همین الگوریتم‌هاست.

الگوریتم اسکریپت Scrypt چیست؟

اسکریپت یک الگوریتم هشینگ در مکانیزم اجماع اثبات کار (Proof of Work) است و جایگزینی برای الگوی هشینگ SHA-256 استفاده‌شده در فرآیند استخراج بیت کوین محسوب می‌شود. عبارت «اسکریپت ماینینگ» نیز برای تجهیزات سخت افزاری ویژه که در فرآیند استخراج کوین‌های مبتنی بر رمزنگاری این مکانیزم به‌کار می‌روند، استفاده می‌شود.

همانند دیگر روش‌های استخراج، اسکریپت ماینینگ شامل حل کردن مسائل ریاضی پیچیده و کدهای رمزنگاری در بلاک چین‌های پشتیبان این الگو جهت افزودن بلاک‌های جدید به شبکه و کسب پاداش آن است.

مزایا و کاربردهای الگوریتم اسکریپت Scrypt در بلاک چین

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

تاریخچه اسکریپت Scrypt

اسکریپت Scrypt به عنوان یک الگوریتم حافظه سنگین برای بهبود امنیت شبکه در برابر حملات با استفاده از سخت افزار طراحی شده است. برخلاف سایر الگوریتم‌های هش مانند Equihash و CryptoNight که به‌طور خاص برای بلاک‌چین‌های اثبات کار توسعه داده شده‌اند، اسکریپت Scrypt در ابتدا برای استفاده دیگری توسعه داده شد و سپس در شبکه‌های بلاک چین اجرا شد.

معرفی اسکریپت Scrypt در شبکه رمز ارز تنبریکس (Tenebrix)

در سال 2011، شبکه ارز دیجیتال تنبریکس با نماد TBX توسط برنامه‌نویس ناشناسی به‌نام Artfortz توسعه داده شد. این بلاک چین اولین پروژه‌ای بود که از Scrypt به‌عنوان یک الگوریتم هشینگ استفاده کرد. با اینکه این پروژه در آخر شکست خورد، اما با ارائه یک گزینه دوستدار CPU برای ماینرهای ارزهای دیجیتال، مسیر جدیدی را ایجاد کرد.

با وجودی که امروزه دیگر اسمی از تنبریکس شنیده نمی‌شود، اما این پروژه نقش حیاتی را در آینده رمز ارزهای مبتنی بر اسکریپت Scrypt و همچنین کوین‌های استفاده‌کننده از الگوریتم‌های هشینگ مقاوم در برابر اسیک ماینرها بازی کرد.

Tenebrix اسکریپت را معرفی می‌کند

در سال ۲۰۱۱، تنبریکس (TBX) توسط یک برنامه نویس ناشناس معروف به Artfortz توسعه یافت. تنبریکس اولین پروژه بلاک چین بود که از اسکریپت Scrypt به عنوان یک الگوریتم هش استفاده کرد. این پروژه در نهایت شکست خورد، اما با ارائه یک گزینه سازگار با CPU برای استخراج کنندگان ارزهای دیجیتال، یک سابقه مهم ایجاد کرد. امروزِ حتی تنبریکس (TBX) را در سایت هایی برای ردیابی ارزهای دیجیتال مختلف پیدا نخواهید کرد. با این وجود، نقش مهمی را به عنوان یک تأثیرگذار برای ارزهای اسکریپت Scrypt آینده و همچنین رمزارزهایی با استفاده از سایر الگوریتم‌های هش مقاوم در برابر ASIC ایفا کرد.

چه ارزهایی قابلیت استخراج با الگوریتم اسکریپت Scrypt در بلاک چین را دارند؟

لایت کوین (LTC)، دوج کوین (DOGE) و اینشتینیم (EMC2) سه پروژه معروفی هستند که از الگوریتم Scrypt در بلاک چین استفاده می‌کنند. در این بخش، نحوه استفاده هر یک از این شبکه‌ها از الگوریتم اسکریپت Scrypt و اثربخشی الگوریتم اسکریپت در حفظ امنیت شبکه را بررسی خواهیم کرد. ما همچنین به چند پروژه نگاه خواهیم کرد که در ابتدا از الگوریتم اسکریپت Scrypt در بلاک چین استفاده می‌کردند، اما از آن زمان به دیگر الگوریتم‌های هش تغییر کرده‌اند.

  • لایت کوین (LTC) لایت کوین (LTC) در اکتبر ۲۰۱۱ راه اندازی شد و خود را به عنوان یک شبکه مقاوم در برابر ASIC معرفی کرد. این نکته جای بحث دارد. پارامترهای انتخاب شده برای الگوریتم اسکریپت Scrypt لایت کوین N=1024، r=1 p=1 بودند. کالین پرسیوال، خالق الگوریتم اسکریپت، بیان کرده است که لایت کوین اسکریپت را ضعیف اجرا کرده است. مقاله Percival’s Scrypt استفاده از r=8 را توصیه می‌کند که ماینرها باید از RAM بیشتری استفاده کنند. این امر از نظر تئوری تسلط ASIC بر شبکه را بسیار دشوارتر می‌کند.

به گفته چارلی لی، پارامترهای بیشتر حافظه باعث کاهش سرعت مشتری شبکه می‌شود. هنگام آزمایش با پارامترهای سخت‌تر، لی متوجه شد که هر بار که یک بلوک وارد می‌شود، کلاینت مسدود می‌شود. لایت کوین پارامترهای کمتری را به عنوان یک مبادله اجرا کرد. این یک تجربه بهتر برای کاربر نهایی ایجاد کرد. علاوه بر این، در آن زمان هیچ GPU، ASIC یا FPGA شناخته شده‌ای وجود نداشت که قادر به استخراج مبتنی بر اسکریپت باشد، بنابراین شبکه در زمان راه اندازی فقط CPU بود.

در ماه می ۲۰۱۴، اولین دستگاه‌های ماینینگ ASIC Scrypt در دسترس عموم قرار گرفت. به نظر می‌رسد لایت کوین از آن زمان موضع خود را در مورد مقاومت ASIC تغییر داده است. بسیاری از ماینرهای LTC اکنون از استخراج ASIC پشتیبانی می‌کنند و استدلال می‌کنند که داشتن ASIC به حفظ امنیت شبکه کمک می‌کند.

پس از هاوینگ شبکه در آگوست ۲۰۱۹، به دلیل کاهش نرخ هش Scrypt از ۵۰۰ TH/s به ۱۵۰ TH/s، نگرانی‌هایی در مورد حمله احتمالی ۵۱٪ وجود داشت. خوشبختانه، شبکه لایت کوین تنها حدود ۶ درصد قابلیت NiceHash دارد؛ به این معنی که یک مهاجم یا گروهی از مهاجمان می‌توانند تنها ۶ درصد از نرخ مورد نیاز برای حمله را اجاره کنند. مهاجم(ها) باید به اندازه کافی اسکریپت ASIC بخرد تا ۹۴% دیگر از قدرت هش مورد نیاز برای انجام یک حمله را پوشش دهد. برای بیان این موضوع، برخی از شبکه‌های دیگر بیش از ۱۰۰۰% قابلیت NiceHash دارند؛ به این معنی که می‌توان آن‌ها را به راحتی با اجاره قدرت هش در Nicehash و بدون نیاز به خرید ASIC کنترل کرد.

تجزیه و تحلیلی از نوامبر ۲۰۱۹ نشان می‌دهد که با فرض اینکه نرخ هش ۱۵۳ TH/s باشد، در واقع تقریباً ۷۰۰ میلیون دلار برای انجام یک حمله ۵۱ درصدی به شبکه لایت کوین هزینه خواهد داشت. این تجزیه و تحلیل شامل هزینه‌های خرید اسکریپت ASIC و مصرف برق و همچنین ارزش LTC است. از آنجایی که این رقم شامل قیمت خرید سخت افزار مورد نیاز برای حمله است، بسیار دقیق تر از تخمین Crypto51 است.

  • دوج کوین (DOGE) در دسامبر ۲۰۱۳، دوج کوین (DOGE) به عنوان هارد فورک لایت کوین راه اندازی شد. اگرچه دوج کوین قرار بود یک “ارز برای سرگرمی” باشد، اما به سرعت طرفداران زیادی را با مارکت کپ بزرگ به دست آورد. پارامترهای استخراج شبکه با لایت کوین متفاوت است. به عنوان مثال، زمان ایجاد بلاک دوج کوین ۱ دقیقه است، در حالی که زمان بلاک لایت کوین ۲٫۵ دقیقه است. تهدید حمله احتمالی ۵۱ درصدی به شبکه دوج کوین باعث شد که چارلی لی لایت کوین استخراج ادغام شده بین این دو شبکه را در آوریل ۲۰۱۴ پیشنهاد کند. این مدل در ژوئیه ۲۰۱۴ در بلوک ۳۱۷,۳۳۷ دوج کوین به کار گرفته شد و به ماینرها امکان می‌داد هم دوج و هم لایت کوین را هم‌زمان استخراج کنند. در نتیجه، هر دو شبکه از سپتامبر ۲۰۱۴ ضرایب همبستگی بسیار بالایی برای سختی استخراج و نرخ هش داشتند.

  • انیشتینیم (EMC2) انیشتینیوم (EMC2) در مارس ۲۰۱۴ به عنوان انشعابی از کد منبع بیت کوین راه اندازی شد. در حالی که شبکه بیت کوین از SHA-256 استفاده می‌کند، انیشتینیوم با استفاده از اسکریپت Scrypt به عنوان الگوریتم هش خود، مسیر مشابهی را به سمت لایت کوین در پیش گرفت.

برای برابر کردن فرآیند استخراج، انیشتینیوم Kimoto Gravity Well را اجرا کرد که یک الگوریتم تنظیم مجدد سختی شبکه است و برای جلوگیری از افزایش استخراج چند ارز استفاده می‌شود. شبکه یک کاهش ۵۰ درصدی بلوک و زمان بلوک ۶۰ ثانیه را اجرا می‌کند.

در اکتبر ۲۰۱۸، یک هکر به نام GeoCold اعلام کرد که قصد خود برای اجرای یک حمله یک ساعته به شبکه انیشتینیوم تنها حدود ۲۰ دلار هزینه دارد. در حالی که این مقدار ممکن است در یک برهه زمانی دقیق باشد، اما پس از اینکه انیشتینیوم اثبات کار تاخیری کومودو (dPoW) را اجرا کرد، در واقع اینطور نبود.

مکانیسم امنیتی dPoW کومودو با بازیافت هش ریت عظیم شبکه بیت کوین، ۵۱ درصد مقاومت حمله را به انیشتینیوم اضافه می‌کند. فرآیندی به نام notarization، ذخیره کردن نسخه پشتیبان از بلوک‌های EMC2 در بلاکچین بیت کوین، این امکان را فراهم می‌کند. این بدان معنی است که هزینه یک حمله یک ساعته به شبکه انیشتینیوم از نظر تئوری با حمله به شبکه بیت کوین حدود ۴۰۰۰۰۰ دلار است. در نتیجه، GeoCold تصمیم به حمله به انیشتینیوم گرفت و به جای آن بیت کوین خصوصی (BTCP) را انتخاب کرد.

الگوریتم هش اسکرپیت Scrypt چه ویژگی دارد؟

اسکرپیت Scrypt دارای ویژگی‌های منحصربه‌فردی است از جمله:

  • الگویی کارا: تابع اسکریپت Scrypt در مقایسه با پیچیدگی کاری که انجام می‌دهد، بار کاری کمی دارد. استفاده از یک کلید و موازی‌سازی فرآیندها، تولید اعداد تصادفی و همچنین توانایی تعدیل مقادیر تابع، بدون به‌خطر انداختن امنیت باعث افزایش کارایی اسکریپت Scrypt می‌شود.
  • امنیت نسبتا بالا: اسکریپت الگوریتمی با سطح امنیت بالا و قابل تعدیل است. این مکانیزم به‌گونه‌ای طراحی شده است تا برنامه‌نویسان قابلیت افزایش یا کاهش متغیرهای تاثیرگذار بر میزان امنیت را داشته باشند. علاوه بر این، Scrypt در برابر حملات بروت فورس (Brute-force) یا «حمله جستجوی فراگیر» مقاومت بالایی دارد که آن را برای سیستم‌های توزیع‌شده مناسب می‌سازد.
  • مقاومت در برابر اسیک و FPGA: در ابتدا، یکی از دلایلی که رمز ارزهایی نظیر لایت کوین از اسکریپت استفاده می‌کردند، توانایی آن در جلوگیری از کاربرد اسیک ماینرها و FPGA بود. این یعنی الگوی اسکریپت Scrypt، ماینینگ از طریق اینگونه تجهیزات را نه تنها بسیار دشوار می‌سازخت، بلکه به‌خاطر مصرف برق بالا نیز باعث کاهش مقرون‌به‌صرفگی آن‌ها می‌شد. در نتیجه، رمز ارزهای استفاده‌کننده از الگوی Scrypt از تمرکززدایی بیشتری بهره‌مند می‌شدند. با این حال، در سال 2014 اولین اسیک ماینر سازگار با این الگوریتم به بازار عرضه شد و همه محاسبات را به‌هم زد.

امنیت در الگوریتم اسکریپت Scrypt

از نظر تئوری، الگوی اسکریپت Scrypt امنیت بالاتری «در هر واحد زمان محاسبه» نسبت به دیگر الگوریتم‌های شناخته‌شده دارد. همچنین با استفاده از این الگوریتم می‌توان سرعت حافظه مورد نیاز برای محاسبه نتیجه را تعیین کرد که باعث افزایش هزینه مهاجمان بروت فروس (از نظر منابع مموری، پردازنده و GPU) می‌شود.

از نظر تئوری و الگوریتمی، اسکریپت Scrypt در حوزه خود نیز بسیار کارآمد است و حملات سخت افزاری شخصی‌سازی‌شده را به‌خاطر الگوریتم مموری هارد خود بسیار پرهزینه می‌کند.

با وجود همه این تفاسیر، با اینکه اسکریپت Scrypt خود را مانعی برای GPU ماینینگ بیت کوین معرفی کرده بود، اما ماینرهایی که از کارت گرافیک برای استخراج استفاده می‌کردند همچنان توانایی ورود به شبکه را داشتند. اما از نظر طراحی، مهاجمان برای افزایش سرعت حمله خود (بروت فورس) همچنان ملزم به استفاده از حافظه بالا بودند (نه لزوما برق بیشتر)، چراکه مموری پایین‌تر باعث کاهش سرعت می‌شد. با این حال، با ورود اسیک ماینرها به این حوزه نیز ورق برگشت و امروزه ماینینگ از طریق CPU و GPU را ناکارآمد کرده است.

در هر حال، اسکریپت Scrypt به‌دلیل افزایش هزینه مهاجمان برای حمله به شبکه و شکستن رمز پسوردها، جزو یکی از امن‌ترین الگوریتم‌ها شناخته می‌شود.

اسکریپت Scrypt یک الگوریتم هشینگ در مکانیزم اجماع اثبات کار است که در ابتدا با هدف غلبه بر تسلط اسیک ماینرها در صنعت ماینینگ و متمرکزسازی شبکه‌های رمز ارزی توسط این تجهیزات توسعه داده شد. الگوریتم Scrypt به‌جای قدرت محاسباتی بالا در مقایسه با SHA-246، به حافظه ذخیره‌سازی بالا نیاز دارد. علاوه بر این، محاسبات در این الگو کندتر است و مدت زمان بیشتری به طول می‌انجامد که به همین خاطر کار را برای اسیک ماینینگ در ابتدای امر دشوار می‌کرد. با این وجود، طی سال‌های اخیر اسیک ماینرهای سازگار با این الگوریتم توسعه داده شده‌ و استخراج از طریق CPU و GPU را ناکارآمد کرده‌اند.

ثبت دیدگاه

کد امنیتی

0دیدگاه

دیدگاهی ثبت نشده است.

اولین نفری باشید که دیدگاهتان ثبت میشود.