حمله ۵۱ درصدی چیست؟
حمله ۵۱ درصد نوعی حمله امنیتی به شبکههای بلاکچین است که در آن یک مهاجم، کنترل بیش از نیمی از توان محاسباتی (هش ریت) شبکه را به دست میگیرد. او با این کنترل میتواند تراکنشها را تغییر دهد و بر تمام شبکه نفوذ داشته باشد. این حمله بیشتر در بلاکچینهای مبتنی بر اثبات کار (PoW) امکانپذیر است و نمایانگر ضعف بنیادین در مکانیزم اجماع آنها است.
احتمالا تاکنون شنیدهاید که بلاکچین بیت کوین غیر قابل نفوذ است، شاید برایتان جالب باشد که بدانید بیت کوین و سایر ارزهای دیجیتال از طریق حملات 51% قابل نفوذ هستند. حمله 51% یکی از خطرناک ترین حملات سایبری علیه بلاکچین ارزهای دیجیتال است.
حملات 51% اتفاقی است که اگر در شبکه یک ارز دیجیتال رخ بدهد، هکر میتواند شبکه ارز دیجیتال را کنترل کرده و اعتبار آن را از بین ببرد. در این مقاله قصد داریم به بررسی این روز بپردازیم.
حمله 51% چیست؟
قبل از شروع بحث درباره حمله 51 درصد ابتدا باید با نحوه کارکرد بلاکچین ارزهای دیجیتال آشنا شویم. یکی از ویژگیهای منحصر بفرد بیت کوین و سایر ارزهای دیجیتال شبکه بلاکچین آنها میباشد. در شبکههای مبتنی بر بلاکچین تمام کاربران میتوانند در ساخت بلاک و تایید تراکنشها شرکت کنند. به افرادی که در بلاکچین بیت کوین و سایر ارزهای دیجیتال اعتبار سنجی میکنند نود (node) گفته میشود. هنگامی که معاملهای در یک شبکه بلاکچین انجام میشود نودها آن را بررسی و تایید میکنند. عملکرد غیرمتمرکز نودها امنیت شبکه بلاکچین را تامین میکند. حتما تاکنون نیز شنیدهاید که بیت کوین و ارزهای دیجیتال امنیت زیادی دارند.
یکی از حملاتی که امنیت شبکه بلاکچین ارزهای دیجیتال را تهدید میکند حملات 51 درصد است، این حمله در شرایطی رخ میدهد که یک نود بیش از نیمی از هشریت (hashrate) شبکه را در اختیار بگیرد. در این حالت هکر قادر است بلاکچین را کنترل کند و در فعالیت شبکه اختلال ایجاد نماید. در چنین حملهای مهاجم از قدرت استخراج (mining) کافی برخوردار است و میتواند تراکنشها را دستکاری کند و تراکنشهایی که در گذشته تایید شدند را برگشت بدهد و آنها را دوبار خرج (double spending) کند.
در یک حمله اکثریت یا حمله 51 درصد مهاجم میتواند مانع تایید همه یا بخشی از تراکنشهای شود. علاوه بر این میتواند برخی از ماینرها را از استخراج باز دارد و بلاکچین را به انحصار خود درآورد و شرایطی تحت عنوان انحصار استخراج (mining monopoly) را ایجاد کند. تاکنون ارزهای دیجیتالی مانند ورج (verge)، زنکش (zencash)، موناکوین (monacoin)، بیتکوین گلد (bitcoin gold) و لایتکوین کش (litecoin cash) هدف حملات ۵۱ درصد قرار گرفتهاند.
حمله 51% چگونه انجام میشود؟
شبکه بلاکچین ارزهای دیجیتال سه ویژگی اصلی برای غیرمتمرکز بودن دارد: عدم وابستگی به نهادهای متمرکز، همتا به همتا (p2p) بودن و ویژگی توزیع دادهها.
هکر در حمله 51 درصد ویژگی توزیع دادههای شبکه بلاکچین را مورد حمله قرار میدهد. این بدان معناست که قدرت پردازش شبکه به جای آنکه بین همه کاربران توزیع شود، در یک نقطه خاص متمرکز شده و در اختیار کنترل کننده آن نقطه قرار میگیرد. در این موقعیت اکثر نودها (nodes) حالت توزیعشدگی خود را از دست میدهند.
نود متخاصم پس از دست یافتن به بیشترین مقدار هش ریت شبکه، یک انشعاب جدید ایجاد میکند و در ادامه بلاکهای جدید ایجاد شده در این انشعاب را جایگزین بلاکهای زنجیره اصلی مینماید. در این میان نکته مهم این است که با ایجاد زنجیره جدید، از میان دو زنجیره به وجود آمده، شاخهای که تعداد بلاک بیشتری داشته باشد به عنوان زنجیره اصلی شناخته میشود؛ نود مهاجم نیز با علم به این موضوع و با توجه به توان هش بالاتری که دارد تعداد بلاکهای بیشتری را در زمان مساوی ایجاد میکند. این کار تا زمانی ادامه پیدا میکند که قدرت هش به مقدار مساوی در میان نودها تقسیم شود. پس از انجام این نوع حملات، سایر نودها نیز به اشتباه انشعاب جدید را به عنوان زنجیره اصلی انتخاب کرده و فعالیت خود را در این زنجیره ادامه میدهند.
لازم به ذکر است هر چه هشریت یک شبکه بلاکچین مبتنی بر اثبات کار (proof of work) پایینتر باشد. هزینه ایجاد اختلال در این شبکه نیز کمتر خواهد بود در این صورت مهاجم میتواند راحتتر در شبکه نفوذ کرده و به ایجاد اختلال در شبکه بپردازد.
احتمال رخداد حمله 51% در بیتکوین و ارزهای دیجیتال چقدر است؟
وقوع حمله 51 درصد در بلاکچینهای بزرگی مانند بیتکوین تقریبا غیرممکن است؛ چرا که اجرای چنین حملاتی برای نودهای مخرب توجیه اقتصادی ندارد.
همانطور که پیش از این گفتیم بلاکچین ارزهای دیجیتال یک شبکه غیر متمرکز و توزیع شده از نودها است. در این شبکه تمام نودها در روند دستیابی به اجماع مشارکت میکنند. این موضوع یکی مهم ترین دلایل امنیت بلاکچین میباشد. هر چه این شبکه بزرگتر و قدرت نودهای فعال در آن بیشتر باشد احتمال اینکه افراد بتوانند قدرت محاسباتی لازم را برای غلبه بر شبکه بدست آورند، کاهش مییابد. در این صورت شبکه در برابر حملات اکثریت مقاومتر است.
در بلاکچین های مبتنی بر اجماع اثبات کار ماینرها طی یک فرآیند پیچیده، برای حل معاملات ریاضی با یکدیگر رقابت میکنند. افزایش قدرت هش یک ماینر به معنای افزایش شانس وی برای پیدا کردن جواب معادلات پیچیده ریاضی است. در روزهای ابتدایی پیدایش بیت کوین تنها چند ماینر در رشد شبکه و تامین امنیت آن نقش داشتند. اما با افزایش قیمت بیتکوین، ماینرهای بیشتری برای بدست آوردن پاداش استخراج این ارز دیجیتال وارد شبکه شدند. این سناریوی رقابتی، یکی از مهمترین دلایل امنیت بلاکچین بیت کوین است. پس در حالی که ماینرها میتوانند با استفاده از توان محاسباتی خود به استخراج بیت کوین بپردازند و از فروش بیت کوین درآمد کسب کنند، لذا منطقی نیست که از توان محاسباتی خود برای مختل کردن شبکه استفاده کنند. چرا که رشد شبکه، ایجاد تغییر در بلاکهای قبلی و دستکاری تراکنشهای موجود در بلاک را سختتر میکند.
پیامدهای حمله 51%
حمله 51 درصد میتواند پیامد و خطرات زیادی را برای شبکه هدف ایجاد نماید. در ادامه برخی از مهم ترین خطرات این حملات را بررسی کردهایم.
با ایجاد حمله اکثریت در شبکه بلاکچین قیمت رمز ارز بومی افت شدیدی پیدا میکند؛ زیرا وقتی ماینرها متوجه شوند که در شبکه آنها حمله 51 درصد رخ داده است؛ سود استخراج شبکه به شدت کاهش مییابد. لذا آنها از استخراج ارز دیجیتال در این شبکه خودداری خواهند کرد و به ماین (min) ارزهای سودآور دیگری روی میآورند.
- مهاجم در این حملات قادر است تراکنشهایی که قبلا تایید شدند را دوباره را برگشت دهد و کوینها را دوبار خرج کند.
- مهاجم با در اختیار داشتن کنترل شبکه میتواند مانع فعالیت همه یا بخشی از ماینرهای شبکه شود. به این عمل انحصار استخراج (mining monopoly) گفته میشود.
- نود متخاصم در حملات 51% میتواند از تایید همه یا بخشی از تراکنشهای شبکه جلوگیری کند و تراکنشهای ارسال شده را لغو کند.
- در شبکه بلاکچینی که هدف حملات 51% قرار گرفته است امکان ایجاد تراکنش جدید از بین میرود.
- در حمله 51 درصد مهاجم با استفاده از قدرت هشریت خود میتواند یک انشعاب جدید در شبکه ایجاد کند و با گذشت زمان ماینرها را به زنجیره خود جذب کند و انشعاب خود را به زنجیره اصلی شبکه تبدیل کند.
دلایل انجام حملات 51 درصد
ممکن است دلایل متعددی در وقوع یک حمله 51% درصد نقش داشته باشند. در ادامه این بحث برخی از سناریوهای ممکن را بررسی خواهیم کرد.
- نو پا بودن شبکه بلاکچین
این روزها تحت تاثیر محبوبیت بازار ارزهای دیجیتال در میان مردم جهان، همه روزه شاهد ظهور ارزهای جدید هستیم. هریک از این ارزها شبکه مخصوص به خود را دارند. از آنجایی که بلاکچین آنها به تازگی بوجود آمده است، تعداد کمی از ماینرها در این شبکه فعالیت میکنند. خلوت بودن شبکه، آن را در برابر حملات 51 درصد آسیب پذیر کرده و ممکن است فرد یا گروهی از افراد بتوانند قدرت غالب استخراج در شبکه ارز دیجیتال را بدست آورند.
-
مقابله با حمله دزدی صورت گرفته در شبکه
هنگامی که در شبکه یک ارز دیجیتال دزدی رخ بدهد، ماینرهای فعال در شبکه، میتوانند در یک استخر استخراج جمع شده و قدرت استخراج خود را به 51 درصد برسانند. در این صورت، این گروه برای بازگرداندن کوینهای دزدیده شده میتوانند یک حمله 51% ترتیب داده و تراکنش را بازگردانی کنند.
-
حمله مالی به شبکه بلاکچین
اکثر حملات 51 درصد به شبکه بلاکچین با هدف مالی صورت میگیرد که در آن هکرها قصد دارند مبلغ زیادی از داراییهای موجود در شبکه را تصاحب کنند.
روشهای حمله 51 درصد
حمله 51 درصد میتواند به روشهای مختلفی انجام بگیرد که در زیر به چند مورد آن اشاره میکنیم.
یکی از شایعترین روشها زمانی اتفاق میافتد که یک استخر استخراج بزرگ شود. در این صورت به دلیل بالا بودن تعداد استخراجکنندگان، این احتمال وجود دارد که نرخ هش این استخر از 51 درصد عبور میکند، دقیقا مشابه آنچه در سال 2014 برای شبکه بیتکوین رخ داد. در آن زمان استخر استخراجی به نام ghash.io به بیش از 51 درصد هش ریت شبکه دست یافته بود اما صاحبان این استخر تصمیم گرفتند با کاهش تعداد استخراجکنندگان استخر میزان هش ریت را کاهش داده و از این مزیت استفاده نکنند. دو بلاکچین کریپتون و شیفت نیز با استفاده از همین روش هدف حمله 51 درصد قرار گرفتند.
حمله 51 درصد میتواند با روش دیگری نیز رخ دهد. در این روش که تنها از طریق تحقیقات نظری بررسی شده است یک شخص قدرتمند و ثروتمند با سرمایه فراوان میتواند هزاران ریگ استخراج ارز دیجیتال را خریداری کرده و 51 درصد هشریت یک شبکه را تصاحب کند و کنترل شبکه را به دست بگیرد. حمله گُلد فینگر (gold finger) نیز نوع متفاوتی از این روش می باشد و در آن یک شخص اکثر ارزهای شبکه را در اختیار دارد و با دو بار خرج کردن یا ارسال تراکنشهای تقلبی به زنجیره میتواند قیمت ارز دیجیتال را تغییر دهد.
آیا نفوذ تولیدکنندگان دستگاههای استخراج در شبکه میتواند خطر 51% را افزایش دهد؟
در سالهای اخیر نگرانیها نسبت به افزایش توان شرکتهای تولیدکننده سختافزارهای ماینینگ (mining) افزایش یافته است؛ چرا که شرکتهای تولیدکننده دستگاههای ایسیک (asic) با افزایش تعداد این دستگاهها و بروزرسانی فناوری به کار رفته در آنها تاثیر زیادی در استخراج بیت کوین و سایر ارزهای دیجیتال دارند. همین موضوع باعث شدت گرفتن نگرانی توسعه دهندگان نسبت به نقش این شرکت ها شده است.
از آنجایی که تولید این دستگاه ها توسط چند شرکت خاص انجام می شود، این نگرانی وجود دارد که با توجه به قدرت مالی بسیار زیاد آنها و تاثیری که بر روی شبکه دارند بتوانند یک حمله 51% را علیه شبکه ترتیب دهند. همین موضوع باعث شد تا مونرو (monero) در بروز رسانی پروتکلهای شبکه خود از فعالیت دستگاههای ایسیک جلوگیری کند. در حال حاضر اتریوم دومین رمز ارز برتر جهان است که با بروزرسانی به نسخه اتریوم 2.0 به جای الگوریتم اثبات کار از اثبات سهام استفاده میکند.
راهحلهای موجود برای جلوگیری از حمله 51% کدام است؟
هرچه تعداد ماینرهایی که در یک شبکه بلاکچینی مشارکت میکنند بیشتر باشد، شبکه بزرگتر و غیرمتمرکزتر خواهد بود، چنین شبکههایی میتواند در برابر حملات 51 درصد مقاومتر باشد؛ زیرا قدرت هشریت شبکه در اختیار ماینرهای زیادی قرار دارد در نتیجه دستیابی به توان هشریت بالا کار بسیار سخت و پرهزینهای میباشد و احتمال اینکه کسی بتواند کنترل توان محاسباتی شبکه را در اختیار بگیرد تقریبا غیر ممکن است.
همچنین باید دقت کنید که زنجیره بلاکچین دائم در حال رشد است و تغییر بلاکهای تایید شده قبلی که توسط ماینرهای زیادی تایید شدهاند و به اجماع رسیدهاند کار بسیار سختی است و هزینه زیادی در بر دارد. بنابراین شبکه بلاکچینهای بزرگی مانند بیتکوین که ماینرهای زیادی دارد. در برابر حملات 51 درصد بسیار مقاوم هستند. خطر حملات 51% در بلاکچینهایی که هش ریت پایینی دارند محتملتر میباشد.
چگونه میتوان حمله 51 درصد را اصلاح کرد؟
بعد از آن که شبکه هدف حمله 51% قرار میگیرد در مرحله اول به تمام ماینرها پیام داده میشود که هیچگونه تراکنشی را در شبکه انجام ندهند. همچنین قابلیت نقل و انتقالات ارز موردنظر در صرافیهای مختلف میبندند و سازمان مربوطه، بلاکها را (reorg reorganzation) میکند. reorg کردن به این معناست که بلاکها را تا جایی که تغییر کردند بررسی و تصحیح میکنند. این کار ممکن است هزینه و زمان زیادی را برای افراد یا صرافیها به دنبال داشته باشد. تصور کنید مجید برای علی یک ارزی را در صرافی انتقال داده است اگر این پول reorg شود پول را صرافی میدهد، چرا که هنگام نقد شدن صرافی میبایست هزینه را پرداخت کند. حالا تصور کنید مجید برای علی پولی را انتقال داده است که جز پول های کلاهبرداری شده باشد در اینصورت پول علی از بین خواهد رفت. آخرین فرآیند reorg اتریوم، به 7 هزار بلاک به عقب رفتند که 2 روز زمان برد و صرافی okex حدود 5.6 میلیون دلار خسارت دید.
تفاوت حمله 51 درصد با 34 درصد چیست؟
تنگل (tangle) یک دفترکل توزیعشده است که با بلاکچین تفاوتهایی دارد؛ این دو شبکه برای اهداف مشابهی ساخته شدهاند. از تنگل برای توسعه آیوتا (iota) که یک ارز دیجیتال برای استفاده در بستر اینترنت اشیا میباشد، استفاده شده است. به دلیل تفاوتهایی که میان بلاکچین با تنگل وجود دارد. در این شبکه میتوان با در اختیار داشتن 34 درصد هش ریت حمله اکثریت انجام داد. در واقع حمله 51 درصد مخصوص بلاکچین و حمله 34 درصد مخصوص تنگل است.