معرفی کریپتونایت (CryptoNight) ؛ یک الگوریتم استخراج برابریطلب
تاریخ انتشار : ۱۴۰۲/۰۷/۲۵
آخرین بروزرسانی : ۱۴۰۲/۰۷/۲۳
الگوریتم کریپتونایت (CryptoNight) یک الگوریتم استخراج ارز دیجیتال است که با هدف ایجاد برابری در قدرت استخراج، ایجاد شد. این الگوریتم با ارز دیجیتال بایت کوین (BCN) معرفی شد و با مونرو (XMR) به شهرت رسید. از آن زمان به بعد بلاک چینهای متعددی الگوریتم استخراج کریپتونایت را در شبکه خود ادغام کردهاند.
در این مقاله، ابتدا علت ایجاد الگوریتم استخراج CryptoNight، طرز کار و نسخههای مختلف آن را بررسی میکنیم. سپس، بلاک چینهای برجستهای که از آن استفاده کردند را معرفی میکنیم و در آخر، به میزان کارآمدی و موفقیت الگوریتم کریپتونایت در رسیدن به اهدافش میپردازیم.
مقدمهای بر الگوریتم کریپتونایت
برای اینکه بدانیم چرا الگوریتم استخراج کریپتونایت مشهور شد باید به چالشهای اصلی بلاک چین قبل از سال 2012 نگاه کنیم. الگوریتمهای ماینینگ سنگ بنای شبکههای مبتنی بر بلاک چین مانند بیت کوین (BTC) و دیگر شبکهها هستند. این الگوریتمها به دستگاههای ماینر دستور میدهند تا قوانین خاصی را برای ایجاد یک بلوک معتبر دنبال کنند. در شبکه بیت کوین این الگوریتم SHA-256 است.
اثبات کار (PoW) الگوریتم اجماع شناخته شدهای است که توسط بیت کوین و سایر ارزهای دیجیتال استفاده میشود. در این الگوریتم، ماینرها از قدرت محاسباتی برای یافتن یک مقدار هش یک بلاک استفاده میکنند. این فرایند بسیار انرژیبر است و رقابت ماینرها در آن مستلزم داشتن یک سخت افزار تخصصی به نام اسیک (ASIC) است، اما قبل از ظهور ماینرهای اسیک، از پردازندههای مرکزی (CPU) و پردازندههای گرافیکی (GPU) استفاده میشد.
اگرچه اولین ریگهای ماینینگ ای سیک سال 2013 ایجاد شدند، اما توسعهدهندگان کریپتونایت، قبلتر تسلط ای سیک را پیشبینی کرده بودند. هدف آنها ساخت سیستمی بود که در آن پردازندههای CPU و GPU بتوانند مزیت رقابتی خود را در استخراج ارز دیجیتال حفظ کنند.
الگوریتم استخراج کریپتونایت چیست؟
کریپتونایت یکی از سریعترین الگوریتمهای استخراج و بخشی از پروتکل اجماع کریپتو نوت (CryptoNote) است. الگوریتم استخراج کریپتونایت نوعی الگوریتم ماینینگ اثبات کار است که مناسب پردازندههای CPU و GPU ساخته شده است. این الگوریتم با هدف جلوگیری از متمرکز شدن قدرت ماینینگ در دست عدهای محدود، به شکلی «مقاوم در برابر اسیک» طراحی شده است. هدف الگوریتم استخراج CryptoNight این است که به کاربران اجاره دهد تا با استفاده از ترکیبی از توابع هش، از جمله توابع هش کریپتونایت و کچاک (Keccak)، کارآمدی استخراج را بالا ببرند. در مقابل، استخراج ASIC عمدتا از الگوریتم هشینگ SHA-256 استفاده میکند.
تابع هش رمزنگاری مورد استفاده در الگوریتم کریپتونایت بر اساس استاندارد رمزنگاری پیشرفته (AES) عمل میکند. این استاندارد یک الگوریتم گرید نظامی است و دلیل استفاده از آن در کریپتونایت سطحی امنیت بسیار بالای آن بود. این ویژگی CryptoNight را به یک الگوریتم استخراج متمرکز بر امینت تبدیل کرده است.
ساخت الگوریتم استخراج کریپتونایت علاوه بر مقاومت در برابر ای سیک یک هدف محوری دیگر نیز دارد: انتقال غیرقابل ردیابی. زمانی بیت کوین به اشتباه یک دارایی غیرقابل ردیابی تلقی میشد. این برداشت از واقعیت خیلی دور بود. در واقع تراکنشهای ارزهای دیجیتال در یک دفترکل توزیع شده شفافیت بیشتری از تراکنشهای ارز فیات دارند. اگر آدرس عمومی یک نفر را داشته باشید مشاهده بالانس، تاریخچه تراکنشهای او و بسیاری اطلاعات دیگر کاری ساده و سر راست است. برای حل این نگرانیهای حریم خصوصی، سازندگان الگوریتم کریپتونایت دو ابزار محوری مربوط به تراکنش های محرمانه ارز دیجیتال را در آن گنجاندند: امضای حلقوی (Ring Signature) و آدرسهای مخفی (Stealth Addresses).
الگوریتم کریپتونایت چه ساختاری دارد؟
همان طور که گفتیم الگوریتم CryptoNight به طور خاص برای بازگرداندن ماینینگ به مردم و در نتیجه تمرکززدایی مجدد از استخراج ارز دیجیتال ساخته شد. کریپتونایت از روشهای زیر برای رسیدن به هدف خود استفاده میکند:
- نیاز به حافظه با دسترسی تصادفی (RAM). ماینرهای اسیک به طور سنتی با تمرکز بر الگوریتمهای هشی که نیازی به دسترسی به حافظه ندارند (مانند الگوریتم SHA-256) ساخته میشوند. آنها فقط روی سرعت انجام محاسبات تمرکز دارند. برای رقابتی کردن پردازندههای گرافیکی و پردازندههای مرکزی، کریپتونایت نیازمند دسترسی به حافظه است. این ویژگی به نفع CPUها و GPUها است که به حافظه دسترسی دارند و در مقابل کار را برای اسیکها دشوار میکند.
- وابستگی به تاخیر: تاخیر (Latency) به مدت زمان مورد نیاز برای اجرای یک محاسبه اشاره دارد، در حالی که وابستگی به این واقعیت اشاره دارد که الگوریتم کریپتونایت اجازه نمیدهد تا وقتی محاسبه اول به پایان نرسیده، محاسبه دومی انجام شود. اتکای الگوریتم CryptoNight به حافظه رم به این معناست که برای هر محاسبه به 2 مگابایت حافظه نیاز است و وابستگی به تاخیر آن به این معناست که ایجاد یک بلوک جدید به تمام بلوکهای قبلی بستگی دارد. این باعث میشود استخراج با الگوریتم کریپتونایت به حافظه بسیار زیادی نیاز داشته باشد که در اختیار ای سیکها نیست.
- طراحی یک اسکرچ پد که دقیقا متناسب با حافظه کش L3 در سی پی یوهای اینتل (حدود 2 مگابایت) است: الگوریتم استخراج کریپتونایت امکان استفاده از GPU را فراهم میکند، اما بیشتر با CPU سازگار است. برای برتری دادن به CPU، کریپتونایت دادههای کاری خود را طوری طراحی کرده که با اندازه حافظه کش مشترک یک CPU مدرن مطابقت داشته باشد. این نوع حافظه در مقایسه با پردازندههای گرافیکی تاخیر کمی دارد و بنابراین CPUها مزیت قابل توجهی در استخراج دارند.
الگوریتم استخراج CryptoNight چطور کار میکند؟
الگوریتم کریپتونایت از پروتکل اجماع CryptoNote برای تقویت حریم خصوصی استفاده میکند تا کسی نفهمد کدام کاربر حاضر در تراکنش پرداخت را انجام میدهد و چه کسی آن را دریافت میکند. کریپتونوت یک پروتکل امنیتی و یک ابزار حفظ حریم خصوصی بود که تراکنشهای محرمانه، تراکنشهای غیرقابل ردیابی (که نمیتوان به کسی نسبت داد) و امضاهای حلقوی را امکانپذیر میکرد. برای همین به منظور ساخت پرایوسی کوین ها بسیار مناسب است.
فرایند کار الگوریتم استخراج کریپتونایت شامل سه مرحله اصلی است:
- ایجاد یک اسکرچ پد (Scratchpad): در طول اجرای تابع هش، مقادیر متوسط روی یک حافظه بزرگ ذخیره میشود. اولین داده ورودی با تابع هش Keccak-1600 هش میشود که 200 بایت داده را به طور تصادفی تولید میکند.
- تبدیل رمزنگاری: الگوریتم استخراج CryptoNight سپس 31 بایت اول این هش Keccak-1600 را میگیرد و آنها را به کلید رمزنگاری برای یک الگوریتم AES-256 که بالاترین مقدار در خانواده AES است، تبدیل میکند.
- هشینگ نهایی: الگوریتم استخراج CryptoNight کل مجموع داده ایجاد شده توسط توابع AES-256 و Keccak در مرحله قبل را میگیرد و آن را از بقیه توابع هش عبور میدهد. در نهایت، یک هش نهایی از اثبات کار CryptoNight حاصل میشود. این هش دارای پسوند 256 بیتی یا در مجموع 64 کاراکتر است.
تکامل الگوریتم CryptoNight
اسیکها به طور مداوم توسعه پیدا میکنند و به صورت سفارشی برای هدف قرار دادن الگوریتمهای ماینینگ خاص ساخته میشوند. در نتیجه، الگوریتم کریپتونایت نیز باید به تکامل خود ادامه میداد زیرا نسخه اصلی آن، CryptoNight v0، در متوقف کردن ای سیکها ناکارآمد بود. از آن سو، ارزهای دیجیتال اجرا شده روی این الگوریتم، از جمله مونرو نیز با ایجاد تغییرات و فورک شدن تلاش کردند تا استخراج ای سیک را کاهش دهند. با این حال، تا به حال، هیچ کدام از نسخههای الگوریتم کریپتونایت ضد ای سیک نبوده است. برخی از نسخههای اصلی الگوریتم استخراج CryptoNight:
- نسخه CryptoNight-Light برای استفاده از یک اسکرچ پد کوچکتر (حدود 1 مگابایت) جهت هشینگ آسانتر روی سخت افزارهای سطح پایینتر طراحی شده است.
- نسخه CryptoNight-Heavy با یک اسکرچ پد بزرگتر (حدود 4 مگابایت) پیادهسازی شد تا مشخص شود که آیا حافظه فشردهتر میتواند اسیکها را دور کند یا خیر.
- نسخه CryptoNight v7 بر اساس دو نسخه بالا و با اندازه اسکرچ پد 2 مگابایت ساخته شده است. پس از ساخت ASICهای جدید سازگار با آن، این نسخه یک بار دیگر بهینهسازی شده و CryptoNight v8 نام گرفت.
خالق الگوریتم CryptoNight کیست؟
ایجاد الگوریتم کریپتونایت داستان جذابی دارد و یادآور داستان خلق بیت کوین است. خالق این الگوریتم که با نام مستعار نیکلاس ون سابرهاگن (Nicolas van Saberhagen) شناخته میشود، درست مثل ساتوشی ناکاموتو معروف ناپدید شد. او یک بار دعوت برای حضور در یک کارگاه را پذیرفت اما به آنجا نرفت و تنها از طریق اسکایپ و نرمافزار تغییر صدا در آن شرکت کرد. با توجه به شباهت رفتاری، بسیاری بر این باورند که این دو توسعهدهنده یک نفر هستند. تاریخ انتشار خاص کریپتونایت، 12 دسامبر 2012 (12/12/12) نیز باعث مرموز شدن بیشتر این شخصیت و تقویت شایعات حول آن شد.
چرا الگوریتم کریپتونایت مهم است؟
الگوریتم استخراج کریپتونایت به سه دلیل مهم مهم است: حریم خصوصی بالاتر با تراکنشهای غیرقابل ردیابی، ویژگی مقاومت نسبت به اسیک و مقیاس پذیری.
اکثر ارزهای دیجیتال، از جمله بیت کوین (BTC) هر چیزی هستند غیر از خصوصی، زیرا تراکنشها و موجودی افراد در بلاک چین از طریق یک آدرس عمومی به راحتی قابل ردیابی است. اما، الگوریتم استخراج CryptoNight برای جلب رضایت بیشتر کاربران نگران در مورد حریم خصوصی که خواهان معاملات بلاک چینی خصوصی هستند، طراحی شده است. سازندگان کریپتونایت دو ابزار امضاهای حلقوی و آدرسهای مخفی را برای دستیابی به حداکثر امنیت و ناشناس بودن در الگوریتم ادغام کردند. هر دوی این ابزارها توسط تیم مونرو (XMR) توسعه یافتهاند.
کاهش نگرانیهای فزاینده در مورد متمرکز شدن ارزهای دیجیتال به دلیل ریگ های ماینینگ ای سیک نیز یکی از دلایل اصلی توسعه الگوریتم کریپتونایت بود. توسعهدهندگان این پروژه روی به چالش کشیدن تسلط ای سیک تمرکز کردند و سیستمی را توسعه دادند که در آن پردازندههای CPU و GPU بتوانند مزیت رقابتی خود را در استخراج بلوکها حفظ کنند.
مقیاسپذیری و کارآمدی بالا نیز از دیگر اهداف الگوریتم CryptoNight بود. قدرت محاسباتی این الگوریتم به صورت تصاعدی افزایش یافته و مقیاسپذیری بیشتر را از طریق تراکنشهای سریعتر تضمین میکند.
کدام ارزهای دیجیتال از الگوریتم CryptoNight استفاده میکنند؟
استفاده از الگوریتم CryptoNight در بلاک چین برترین رمز ارز پرایوسی یعنی مونرو به مشهور شدن این الگوریتم کمک کرد، اما قبل و بعد از آن در ارزهای دیجیتال دیگری نیز استفاده شده بود.
بایت کوین (BCN)
اولین ارز دیجیتال مبتنی بر CryptoNight که از توسعه این الگوریتم پشتیبانی کرد، بایت کوین (Bytecoin) بود. این رمز ارز اگرچه در ابتدا متعهد به مقاومت در برابر تسلط ماینرهای ای سیک بر شبکه خود بود، اما در سال 2018 اعلام کرد که استخراج ای اسیک را با الگوریتم کریپتونایت ادغام میکند. دلیل تغییر رویکرد بایت کوین این بود که ماینرهای اسیک را به عنوان محافظی در برابر ریسکهای امنیتی احتمالی تلقی میکرد.
مونرو (XMR)
با وجود اینکه Monero دیگر از الگوریتم CryptoNight استفاده نمیکند، اما به دلیل موضع کریپتونایت در برابر تسلط ای سیک، یکی از قویترین حامیان آن بود. شبکه مونرو با ارز XMR، در سال 2014 کریپتونایت را به عنوان الگوریتم اثبات کار در شبکه خود ادغام کرد، سپس کمی الگوریتم را تغییر داد و CryptoNight-R را ایجاد کرد تا سازگاری با ماینرهای ای سیک موجود در آن زمان را از بین برد.
با این حال، در سال 2017 یک نسخه کارآمد سازگار با اسیک از کریپتونایت توسط شرکت بیت مین (Bitmain) توسعه یافت و تا سال 2018، ماینرهای ای سیک دوباره موفق به استخراج در شبکه مونرو شدند. در سال 2019، مونرو الگوریتم ماینینگ خود را به رندوم ایکس (RandomX) تغییر داد که مقاوم در برابر استخراج اسیک و سازگار با CPU است.
الکترونیوم (ENT)
ارز دیجیتال الکترونیوم (ENT) از الگوریتم استخراج CryptoNight استفاده میکند. نوآوری قابل توجه الکترونیوم این است که به کاربران اجازه میدهد تا نه تنها با روش معمولی بلکه با استفاده از تلفنهای هوشمند خود ENT استخراج کنند.
سایر پروژههای کمتر شناخته شدهای که الگوریتم کریپتونایت را پیاده میکنند شامل بولبری (Boolberry)، دش کوین (Dashcoin)، دیجیتال نوت DigitalNote، دارک نت کوین (DarkNetCoin) و پبل کوین (Pebblecoin) هستند. با این حال، این پروژهها در سال 2017 در معرض حملات مخرب قرار گرفتند و نگرانیهایی در مورد امنیت شبکههای آنها و قابلیت اطمینان الگوریتم CryptoNight ایجاد شد.
چشمانداز آینده الگوریتم کریپتونایت چیست؟
الگوریتم استخراج کریپتونایت از زمان آغاز به کار خود در سال 2012 تا زمان معرفی نسخه نهایی ایجاد شده توسط مونرو، یعنی CryptoNight-R تحت تغییرات، ارتقاها و اصلاحات قابل توجهی قرار گرفت تا با پروژههای مختلف ارزهای دیجیتال سازگار شود.
آیا الگوریتم CryptoNight هنوز یک الگوریتم استخراج معتبر است یا در ماموریت خود برای تبدیل شدن به یک ابزار برابریطلب شکست خورده است؟ بسیاری معتقدند که این اتفاق نیفتاد و الگوریتم کریپتونایت مقاومت خیلی زیادی در برابر اسیک نداشته است. این الگوریتم از سایر الگوریتمها مثل SHA-256 عملکرد بهتری داشته اما اسیکها در اوایل 2018 بر آن تسلط پیدا کردند.
تیم مونرو اعلام کرد که این ناتوانی به دلایل امنیتی بوده است. از آنجایی که تایید هش الگوریتم کریپتونایت نسبتا پرهزینه و زمانبر است، ممکن است خطر حمله انکار سرویس (DoS) را برای نودها ایجاد کند و این چیزی است که قبلا برای برخی از ارزهای دیجیتال مبتنی بر الگوریتم CryptoNight اتفاق افتاده است.
برخی دیگر معتقدند کریپتونایت تمام تلاش خود را برای جلوگیری از گسترش بیشتر قدرت ای سیک انجام داد و میزانی از برابری را به استخراج ارزهای دیجیتال برگرداند. با وجود اینکه قابلیت مقاومت در برابر ای سیک دیگر امکانپذیر نیست زیرا این ماینرها توانستند برای استخراج با الگوریتم کریپتونایت سازگار شوند، اما کریپتونایت هنوز هم میتواند نقطه شروع خوبی برای توسعه پروژههای ارز دیجیتال آینده باشد.
در مجموع، پروژههای مبتنی بر الگوریتم کریپتونایت اغلب مجبور بودند بین تراکنشهای خصوصی، امنیت شبکه و مقاومت نسبت به اسیک اولویتبندی کنند و بیشتر آنها دو اصل اول را انتخاب کردند. برای رسیدن به هر سه این اهداف الگوریتم CryptoNight باید به صورت کلی تغییر کند.
سخن پایانی
الگوریتم کریپتونایت (Cryptonight) یک الگوریتم اثبات کار است که توسط ارزهای دیجیتال مختلف، از جمله مونرو استفاده شده است. این الگوریتم تلاش کرد با مقاومت در برابر تسلط سخت افزار ای سیک، غیرمتمرکز بودن شبکهها را تضمین کند و زمین بازی برابر برای همه مشارکتکنندگان ایجاد کند، اما در نهایت در رسیدن به این هدف شکست خورد. از سوی دیگر، الگوریتم استخراج کریپتونایت توانست با پیادهسازی ویژگیهایی مانند امضای حلقوی و آدرسهای مخفی، حریم خصوصی را بهبود دهد و ردیابی تراکنشها در شبکه را دشوار کند و از این جهت نسبت به سایر الگوریتمها و پروتکلها برتری دارد.
تهیه شده در بیت 24
از 1 تا 5 چه امتیازی به این مطلب میدهید؟
اشتراک گذاری
افزودن نظر ( 0)
0
نظر خود را بنویسید
پیام شما ثبت شد و بعد از تایید مدیر منتشر خواهد شد