هک دائو؛ ماجرایی که اتریوم را دو تکه کرد
برای ثبت سفارش به حساب نیاز دارید. ثبت نام رایگان است.
تابستان ۱۳۹۵، یک قرارداد هوشمند روی اتریوم که قرار بود صندوق سرمایه گذاری غیرمتمرکز باشد، خالی شد. سایت رسمی اتریوم رقم را در تاریخچه خود نوشته است: بیش از ۳٫۶ میلیون واحد اتر.
آنچه بعد از آن اتفاق افتاد، مهم تر از خود هک بود. و شبکه ای که امروز اتریوم کلاسیک نام دارد، محصول همان تصمیم است.
ایده جسورانه ای بود: صندوقی که هیچ مدیری ندارد و همه تصمیم هایش را دارندگان توکن با رای گیری می گیرند. پول جمع شد، مبلغ بزرگی هم جمع شد.
اما در کد آن یک ایراد بود. مهاجم توانست با یک ترفند، بارها قبل از به روز شدن موجودی حسابش، برداشت را تکرار کند. این نوع حمله امروز اسم دارد و در هر دوره آموزش قرارداد هوشمند تدریس می شود؛ آن روز تازگی داشت.
نکته ای که باید روشن باشد: مشکل در پروتکل اتریوم نبود. در کد آن قرارداد خاص بود. شبکه دقیقا همان کاری را کرد که به آن گفته شده بود.
حالا جامعه اتریوم سر یک دوراهی بود. می شد تاریخچه را تغییر داد و دارایی را برگرداند، یا می شد پذیرفت که اتفاق افتاده و ادامه داد.
رای گیری برگزار شد و طبق همان مستندات، بیش از هشتاد و پنج درصد آرا به بازگرداندن دارایی رای دادند. انشعاب در تاریخ بیستم جولای ۲۰۱۶ و در بلاک شماره ۱٬۹۲۰٬۰۰۰ اجرا شد.
اما بخشی از شبکه همراه نشد. سایت اتریوم صریح می نویسد که گروهی از ماینرها حاضر به انشعاب نشدند، چون به نظرشان آن حادثه نقصی در پروتکل نبود، و آن ها اتریوم کلاسیک را ساختند.
دقت کنید کدام طرف کدام است: زنجیره ای که ادامه بدون تغییر تاریخچه است، اتریوم کلاسیک نام گرفت و زنجیره جدید نام اتریوم را نگه داشت.
بگذارید بی تعارف باشم، چون بیشتر مقاله ها اینجا محافظه کار می شوند و هر دو طرف را حق به جانب نشان می دهند.
طرف اقلیت یک اصل را مطرح می کرد: اگر تاریخچه بلاکچین را در یک مورد بشود عوض کرد، دیگر تغییرناپذیر نیست و ادعای اصلی این فناوری از بین می رود. این استدلال از نظر منطقی محکم است.
طرف اکثریت یک واقعیت را مطرح می کرد: بخش بزرگی از کل دارایی شبکه در دست یک مهاجم بود و رها کردن آن، پروژه را در نطفه می کشت. این هم واقعی بود.
و ده سال بعد، نتیجه عملی روشن است: زنجیره ای که تاریخچه را عوض کرد، امروز مرکز اکوسیستم قرارداد هوشمند است و زنجیره ای که روی اصل ماند، بسیار کوچک تر است. این به معنای درست بودن آن تصمیم نیست، اما هزینه پایبندی به اصل را نشان می دهد.
سه درس، و هر سه هنوز زنده اند.
قرارداد هوشمند، برنامه است و برنامه اشکال دارد. «روی بلاکچین اجرا می شود» به معنای «امن است» نیست. بخش بزرگی از سرقت های این حوزه، از خطای کد پروژه ها آمده نه از شکستن رمزنگاری شبکه. الگوهای رایج تر این ماجرا را در الگوهای رایج سرقت در ارز دیجیتال جمع کرده ایم.
غیرمتمرکز بودن، تصمیم نگرفتن نیست. وقتی بحران آمد، اتریوم مجبور شد تصمیم بگیرد و چون سازوکار رسمی نداشت، تصمیم به انشعاب ختم شد. همین تجربه بعدا انگیزه ساخت شبکه هایی شد که رای گیری را داخل پروتکل بردند؛ نمونه اش را در شبکه ای که بدون انشعاب ارتقا پیدا می کند ببینید.
و درس سوم، عملی ترین: بعد از هر انشعاب، دو زنجیره وجود دارند که آدرس هایشان یک شکل است. این تا امروز منبع اشتباه های گران است و ربطی به سال ۲۰۱۶ ندارد؛ همین امروز هم کاربران دارایی را روی شبکه اشتباه می فرستند.
هک دائو یک حادثه امنیتی بود که به یک بحث فلسفی تبدیل شد و جواب آن بحث، دو شبکه ساخت که هنوز هر دو زنده اند.
اگر می خواهید بدانید امروز کدامشان به درد چه کاری می خورد، اینکه چرا یکی هنوز استخراج می شود تفاوت های عملی را کنار هم گذاشته است، و وضعیت پروژه های دیفای روی اتریوم کلاسیک نشان می دهد امروز چه چیزی واقعا روی آن اجرا می شود. برای معامله هم خرید و فروش ETC با نرخ لحظه ای در دسترس است.
هک دائو دقیقا چه بود؟
در تابستان ۲۰۱۶ مهاجمی از یک ایراد در کد قرارداد دائو استفاده کرد و بیش از ۳٫۶ میلیون اتر را از آن خارج کرد. ایراد در آن قرارداد بود، نه در پروتکل اتریوم.
اتریوم کلاسیک چگونه از اتریوم جدا شد؟
با یک انشعاب در بلاک ۱٬۹۲۰٬۰۰۰ در بیستم جولای ۲۰۱۶. اکثریت شبکه به تغییر تاریخچه و بازگرداندن دارایی رای داد و اقلیتی که این کار را قبول نداشت، زنجیره اصلی را ادامه داد و نامش شد اتریوم کلاسیک.
کدام زنجیره اصلی است؟
از نظر فنی، اتریوم کلاسیک ادامه بی وقفه زنجیره قبلی است. از نظر بازار و اکوسیستم، اتریوم جایی است که تقریبا همه توسعه و نقدینگی در آن جمع شده. جواب به این بستگی دارد که «اصلی» را چطور تعریف کنید.
اگر قبل از انشعاب اتر داشتم چه شد؟
دارندگان قبل از بلاک انشعاب، روی هر دو زنجیره موجودی داشتند. این ویژگی عمومی انشعاب هاست، اما چون آدرس ها در دو شبکه یک شکل اند، انتقال روی شبکه اشتباه از همان زمان تا امروز یکی از رایج ترین دلایل از دست رفتن دارایی است.