آشنایی با حمله سازماندهی مجدد بلاکچین یا (Reorg) و عوامل آن
خطرات و ریسکهای زیادی امنیت بلاکچین را تهدید نمیکنند، اما یکی از مواردی که تا حدی رایج نیز هست و ممکن است برای بلاکچین خطرساز شود، حمله سازماندهی مجدد بلاکچین است. البته باید بگوییم این حمله با حملههای عادی که در ذهن شما وجود دارد کمی فرق دارد ولی در مجموع به این معنی است که یک عنصر مخرب در بلاکچین فرصت توسعه بیابد و ماینرها و گرههای برای مقابله با آن تلاش کنند. به طور کلی با وجود آن که اکثر مردم نیازی به درک جزئیات فنی کامل از نحوه وقوع چنین حملاتی در شبکههای بلاکچین ندارند، مهم است که بدانیم این حملات چرا رخ میدهند و چگونه حل میشوند. پس در ادامه مقاله با ما همراه باشید تا به بررسی این موضوع بپردازیم.
سازماندهی بلاکچین چیست؟
سازماندهی مجدد بلاکچین یا Chain Reorganization، که به اختصار reorg نامیده میشود، زمانی اتفاق میافتد که یک بلوک از بلاکچین حذف شود تا فضایی برای شکلگیری یک زنجیره طولانیتر ایجاد کند. در واقع اگرچه بلاکچین فضایی با پتانسیلهای بالا و پیشرفته است اما همچنان ممکن است موانع و نقایصی برای آن وجود داشته باشد. برای مثال، از رایجترین نمونههای این نقایص میتوان به تضاد بلاکچین اشاره کرد که مربوط به زمانی است که دو بلوک به طور همزمان منتشر میشوند و یک انشعاب یا شاخه در بلاکچین رخ میدهد.
بر اساس قانون، برای حل چنین مشکلی ماینرها باید طولانیترین زنجیره (LRC) را معتبر بشناسند و سایر زنجیرهها حذف شوند. این یعنی هر گره باید طولانیترین زنجیرهای که از آن آگاه است را انتخاب کند و آن را گسترش دهد تا تراکنشهایی که به سمت شاخه اشتباه فرستاده شدهاند دوباره و در بلوک جدیدی بازسازی شود. این قانون کمک میکند که تایید تعداد کمی از تراکنشها که به شاخه اشتباه رفتهاند به تأخیر بیافتند و این امر در نهایت منجر به سازماندهی مجدد بلاکچین خواهد شد.
در اغلب موارد، سازماندهی مجدد در شبکههای شلوغ مانند اتریوم و بیت کوین و جایی که گرهها میتوانند همزمان و در یک مکان یک بلوک جدید تولید کنند، اتفاق میافتد. در صورت بروز نقص در فرآیند، زمانی که گرهها کپیهای خود را آپدیت میکنند، گرهای که زنجیره کوتاهتر را تولید کرده آن را دوباره سازماندهی خواهد کرد. در واقع این بازآرایی مجدد زنجیر در اصل تضمینکننده این است که تمام اپراتورهای گره یک نسخه اطلاعات توزیعشده دارند.
پیامدهای سازماندهی مجدد بلاکچین
سازماندهی مجدد اگرچه با هدف بازگرداندن زنجیره به حالت اصلی انجام میشود اما پیامدهایی را برای بلاکچین به دنبال دارد که برخی از آنها حتی میتوانند خطرناک باشند. در مجموع چهار پیامد ممکن است در حین سازماندهی مجدد رخ دهد:
۱-افزایش هزینه های نودها
Reorgs میتواند تعداد گرههای درون بلاکچین را در طول زمان افزایش دهد که ممکن است باعث کاهش کیفیت تجربه کاربری شود. علاوه بر این، انتقال تراکنش به یک فورک یا شاخه جدید بهروزرسانیها هزینههای بیشتری را برای حافظه و دیسک خواهند داشت.
۲- تاخیر در تایید تراکنش و تجربه کاربری ضعیف تر
همراه با افزایش هزینههای گره، سازماندهی مجدد احتمال تاخیر در تایید تراکنش را نیز افزایش میدهد. این امر در واقع یک مشکل مهم برای صرافیها به شمار میرود زیرا آنها یا باید به تایید به موقع تراکنش توسط بلاکچین تکیه کنند و یا عواقب جدیتری را برای تاخیر در برداشت وجوه متحمل شوند.
۳-عدم قطعیت
سازماندهی مجدد بلاکچین میشود تا کاربران دیگر تضمین قطعی برای انجام سریع و به موقع تراکنشهای خود نداشته باشند. بدون زمینه کافی، تراکنشهای DeFi نتایج بسیار بدتری خواهند داشت و همچنین ممکن است منجر به استخراج مضر MEV شود.
۴-آسیب پذیری در برابر حملات
اگر سازماندهی مجدد در بلاکچین رایج شود، مهاجمان فقط باید بخشی از ماینرهای تاییدکننده و نه همه آنها را (به دلیل قانون طولانیترین زنجیره) شکست دهند. بنابراین هر چه تعداد reorg افزایش یابد، مهاجمان کار آسانتری برای حمله به شبکه خواهند داشت.
حمله سازماندهی مجدد بلاکچین در یک نگاه
حمله سازماندهی مجدد زنجیره در بلاکچین به تقسیمی اشاره دارد که طی آن گرهها با وجود ادامه یافتن زنجیره قدیمی، از زنجیره جدید بلاکهایی را دریافت میکنند.
در ۲۵ می ۲۰۲۲، زنجیره Ethereum Beacon درگیر یک سازماندهی مجدد هفت بلوکی شد و در معرض خطر امنیتی سطح بالایی به نام chain organization قرار گرفت. پس از این اتفاق، فعالیت اعتبارسنجهای لایه دوم اتریوم (Eth2) با مشکل مواجه شد و علت آن این بود که اعتبارسنج نتوانست پس از آپدیت جدید مشتریان خاص خود را با آن هماهنگ کند و بسیاری از اعتبارسنجها در شبکه بلاکچین سردرگم شدند. این اتفاق که سازماندهی مجدد هفت بلوکی نام گرفت، به عنوان یکی از مشهورترین حملات سازماندهی مجدد شناخته میشود.
منظور از سازماندهی مجدد هفت بلوکی (Seven-block reorganization) حملاتی است که در آن پیش از مشخص شدن خطای شبکه، هفت بلوک تراکنش به فورک ایجاد شده اضافه میشود. از آنجایی که سازماندهی مجدد بلاکچین در صورتی اتفاق میافتد که برخی از گرههای اعتبارسنج سریعتر از دیگران عمل کنند، در طول این سناریو، گرههای سریعتر نمیتوانند درباره اینکه کدام بلوک باید ابتدا پردازش شود به توافق برسند و به اضافه کردن بلوکها به زنجیره ادامه میدهند. در نهایت گرههای سریع با ایجاد بلاک بعدی، زنجیره کوتاهتر را ترک میکنند.
برای این که بتوانیم مفهوم حمله سازماندهی مجدد زنجیره را روشنتر کنیم، بهتر است تا با یک مثال پیش برویم. ماینرهای X و Y را تصور کنید که هر دو یک بلوک معتبر را به طور همزمان پیدا کرده و میخواهند آن را استخراج کنند، اما به دلیل نحوه پخش بلاکها در شبکه همتا به همتا، بخشی از نودهای شبکه ابتدا بلوک X و بخشی دیگر بلاک Y را میبینند.
در صورتی که دو بلوک سختی برابری را داشته باشند، مشتریان میتوانند بلوک خود را به صورت تصادفی انتخاب کنند. این دو راهی زمانی از بین میرود که ماینر سوم (Z)، بلوکی را پس از X یا Y استخراج کند. در چنین موقعیتی میگوییم chain reorganization یا همان سازماندهی مجدد رخ داده است.
چرا حملات سازماندهی مجدد رخ می دهد؟ بررسی نمونه ها
انگیزههای مختلفی میتواند برای شکلگیری حملات سازماندهی مجدد وجود داشته باشد. اگرچه بسیاری معتقدند هدف از این حملات سود سریع است اما عوامل دیگری مانند اختلال عمدی، ایجاد مزاحمت برای صرافیها و کاربران آنها و آسیب به اعتبار بلاکچین یک شبکه میتوانند دلایل رخ دادن آن باشند. حملات Reorg برای شکل گرفتن به پول و انرژی الکتریکی نیاز دارند و این روزها نیز راههای محافظت از بلاکچین در برابر آنها مانند مکانیسمهای تشخیص زودهنگام و هشدار برای گرهها و مبادلات کمک میکنند تا این حملات کاهش یابند. در ادامه نمونه هایی از حملات سازماندهی مجدد بلاکچین را بررسی میکنیم؛
دشوار کردن معاملات یک ارز دیجیتال ممکن است قیمت واحد آن را در فیات کاهش دهد و دردسرهای بیشتری را برای حتی معاملهگران به همراه داشته باشد. با این حال در صورتی که مهاجم با هدف سود بردن به reorg حمله کند، به نفع او نیست که قیمت بازار بیش از حد کاهش یابد. تحقیقات انجام شده در مورد حملات گذشته به بیت کوین گلد، لایت کوین کش، Expanse و Vertcoin نشان داد که تنها قیمت VTC به طور قابل توجهی کاهش یافته که آن هم پس از مدتی به قیمت قبلی خود بازگشت.
BTG
BTG یکی از شاخههای کمتر شناخته شده ارز دیجیتال بیت کوین است که در اکتبر ۲۰۱۷ با وعده بازگرداندن استخراج GPU از زنجیره اصلی BTC جدا شد. این شبکه از آنجا که نودهای نسبتا کوچکی دارد و قیمت واحد آن هرگز کمتر از ۵ دلار نشده، همواره یک هدف جذاب برای حملات Reorg بوده است. طبق گزارشها، در طی دو حمله سال ۲۰۱۸ و ۲۰۲۰ به این شبکه صرافیها با توجه به ارزش بالاتر BTG در آن زمان، حدود ۱۷/۵ میلیون دلار ضرر کردند.
BTC
معروفترین حمله سازماندهی مجدد بلاکچین بیت کوین در مارس ۲۰۱۳، درست قبل از شناخته شدن بیت کوین به عنوان یک ارز دیجیتال اتفاق افتاد. این حادثه همچنین به دلیل استفاده Gavin Andresen از سیستم Alert Key برای اطلاع دادن به ماینرها قابل توجه است که در نهایت منجر به حذف کلید از پروتکل BTC شد. لازم به ذکر است BTC هنوز یک راهحل داخلی که به وسیله آن ماینرها اقدامات فوری برای رفع مشکل را انجام دهند، ندارد.
ECash
در مارس ۲۰۲۱، شبکه BCHA (که اکنون eCash نامیده میشود) حملات reorg را تجربه کرد که به نظر میرسید توسط گروهی از حامیان BCH به نام Voluntarism.dev انجام یا حداقل به شدت پشتیبانی میشد. این حملات از این جهت مورد توجه قرار گرفت که در آن اتفاقی مشابه با حملات reorg به BSV یعنی جعل ZuluPool رخ داد.
ETH
حمله سازماندهی مجدد بلاکچین بیت کوین که به عنوان طولانیترین سازماندهی مجدد نیز شناخته میشود در سال ۲۰۲۱ اتفاق افتاد. این حمله که به آن Bacon Chain نیز میگویند باعث ایجاد یک سازماندهی هفت بلوکی شد. البته عوامل خارجی نقشی در این حمله نداشتند و علت آن سردرگمی اعتبارسنجها در انتخاب بلوک بود. از آنجا که این سازماندهی مجدد بیش از ۵ بلوک طول کشید آن را حمله نامیدند.
سازماندهی مجدد؛نقطه ضعف بلاکچین های PoS
همانطور که گفتیم، انتقال هر تراکنش به فورک جدید نیاز به آپدیت اطلاعات و در نتیجه هزینههایی برای حافظه و دیسک دارد. در نتیجه این اتفاق، از آنجا که امکان ثبت دوباره یک تراکنش نیز ممکن میشود، کاربران باید برای این که از تایید تراکنش خود اطمینان بیابند مدت بیشتری منتظر بمانند و طبیعتا زمان برداشت و انتقال تراکنش از صرافیها طولانیتر خواهد شد.
سازماندهی مجدد زنجیره همچنین خطر شکست تراکنشهای DeFi به دلیل خطای انسانی را افزایش میدهد که بازده معاملاتی کمتر از حد انتظار را به دنبال دارد. علاوه بر این Reorg آسیب پذیری بلاکچین در برابر حملات را چیزی در حدود ۵۱% افزایش میدهد، به این معنی که مهاجمان دیگر مجبور نیستند همه ماینرهای تاییدکننده را شکست دهند. بلکه در عوض تنها با غلبه بر اعتبارسنجهایی که سازماندهی نشدهاند، میتوانند به هدف خود برسند.
از همه مهمتر این که هرچه تعداد این سازماندهیها بیشتر شود، امنیت بلاکچین کاهش مییابد و مهاجمان کار آسانتری را دارند. بنابراین بهترین کار برای تمام بلاکچینهای PoS این است که با استفاده از مکانسیمهای دفاعی، امکان رخ دادن سازماندهی مجدد بلاکچین را کاهش دهند یا در صورت بروز سریعا آن را شناسایی و رفع کنند.