در دنیای ارزهای دیجیتال، منظور از فورک بهروزرسانی یا انشعاب از بدنه اصلی بلاک چین است که به دو نوع نرم یا سافت فورک (Soft Fork) و سخت یا هارد فورک (Hard Fork) تقسیم میشود. اتریوم یکی از شناختهشدهترین جایگزینهای بیت کوین است. این برنامه بهلطف برنامهنویس روسی آن، ویتالیک بوترین (Vitalik Buterin)، در اواخر سال 2013 راه اندازی شد. بوترین از فناوری بلاک چین مورد استفاده در بیت کوین الهام گرفت و قصد داشت یک شبکه غیرمتمرکز برای طراحی برنامهها ایجاد کند. اتریوم یک پلتفرم مبتنی بر این فناوری است.
هارد فورک برلین چیست؟
هارد فورک برلین اتریوم (Ethereum Berlin Hard Fork) یک نوسازی شبکه است که شامل چهار پیشنهاد بهبود اتریوم (EIP) میشود که قیمت گس را بر هم میزند و انواع جدیدی از تراکنشها را امکانپذیر میکند.
در مورد دلیل نیاز به نسخهای جدید از اتریوم باید گفت که قرار بود اتریوم یک «رایانه» غیرمتمرکز باشد که در آن کاربران بتوانند برنامههای کاربردی ایجاد کنند. دارایی اصلی آن قراردادهای هوشمند (Smart Contracts) است که اجازه میدهد قراردادها بدون روابط تجاری بلندمدت و بدون نیاز به ایجاد اعتماد منعقد شوند. بااینحال، این ایده بهقدری محبوب شد و تعداد تراکنشها در آن چنان بالا رفت که این شبکه دیگر نمیتوانست از عهده آن برآید و قیمت انتقال ETH بهطور چشمگیری افزایش یافت. اهمیت هارد فورک برلین اتریوم بیش از همه برای کاربرانی ملموس است که گرفتار کارمزدهای هنگفت و زمان آهسته تراکنش شده بودند. اتریوم یکی از بزرگترین پلتفرمهای کریپتو برای برنامههای غیرمتمرکز (Dapps) است که با ازدحام شبکه سروکار دارد. این ازدحام نشاندهنده هزینههای بالای گسی بوده که کاربران باید با هر تراکنش بپردازند. شبکه اتریوم باید نیازهای کاربران روبهرشد خود را برآورده میکرد. به همین منظور، آپدیت هارد فورک برلین معرفی شد. هارد فورک برلین شامل چهار پیشنهاد بهبود اتریوم است که قیمت گس را سامان میبخشد و انواع تراکنشهای جدید را امکانپذیر میکند. هارد فورک برلین پلهای برای هارد فورک بسیار بزرگتر لندن به حساب میآید. عنوان هارد فورک برلین از نام شهر میزبان کنفرانس افتتاحیه دِوکان (Devcon) گرفته شده است.
هارد فورک برلین چگونه کار میکند؟
هارد فورک برلین اتریوم در 15 آگوست 2021 پیادهسازی شد و اولین بهروزرسانی بزرگ بعد از پیدایش زنجیره فانوس دریایی (Beacon Chain Genesis) بود. بهروزرسانی هارد فورک برلین تغییراتی عمده و چهار پیشنهاد (پروپوزال) بهبود اتریوم (Ethereum Improvement Proposals)، یا همان (EIP) را به همراه داشت که به بهبود قیمت گس و انجام انواع تراکنشهای جدید کمک کرد. هارد فورک برلین پیشروی نمونههای دیگر شد و بهعنوان پلهای برای هارد فورک حیاتی لندن عمل نمود که شاهد اجرای EIP-1559 بود که یک تغییر قابل توجه و بحثبرانگیز در ساختار هزینه موجود در اتریوم به حساب میآمد. هارد فورک برلین در بلاک 12،244،000 فعال شد.
بنیاد اتریوم، سازمانی که از بلاک چینی با همین نام پشتیبانی میکند، اعلام کرد: هارد فورک برلین قیمتهای گس را بر هم زد و انواع تراکنشهای جدید در بلاک چین را مجاز ساخت؛ همچنین یک «خطر واضح و شایع» طولانیمدت برای پلتفرم را نیز از بین برد و آن خطر آسیبپذیری شبکه در برابر حملات هکری بود. در این مقاله نگاهی دقیقتر به هارد فورک برلین و EIPهایی که این هارد فورک معرفی میکند و تاثیر آنها بر اکوسیستم اتریوم خواهیم داشت.
مفهوم EIP چیست؟
پیش از شروع، اجازه دهید مفهوم پیشنهادهای بهبود اتریوم را درک کنیم. پیشنهادهای بهبود اتریوم یا EIPها استانداردهایی در اتریوم هستند که هر ویژگی یا فرایند جدید بالقوهای که میتواند در بلاک چین پیادهسازی شود، را مشخص میکنند. آنها حاوی مشخصات فنی همه تغییرات پیشنهادی هستند و بهعنوان «منبع حقیقت» (source of truth) برای جامعه بزرگتر اتریوم عمل میکنند. تمام ارتقاهای شبکه و استانداردهای برنامه در اتریوم از طریق EIPها مورد بحث و توسعه قرار گرفتهاند.
هر کاربر در جامعه اتریوم میتواند EIPهای خود را طبق دستورالعملهای ارائهشده در EIP1 ایجاد کند. این دستورالعملها بیان کردهاند که EIP باید مشخصات فنی مختصر و منطق روشنی برای اجرای یک ویژگی داشته باشد. هنگامی که EIP برای بحث بیشتر انتخاب شد، این بر عهده نویسنده EIP است که در جامعه اتریوم برای حمایت از پیشنهاد و مستندسازی هرگونه دیدگاه مخالف، اجماع ایجاد کند. ارسال یک EIP به مهارت و دانش فنی قابل توجهی نیاز دارد، بنابراین جای تعجب نیست که اکثر نویسندگان EIP برنامهنویسان پروتکل هستند.
چرا EIPها اهمیت دارند؟
EIPها، یا همان پیشنهاد (پروپوزال) بهبود اتریوم، در دیکته کردن چگونگی و چرایی اجرای تغییرات در بلاک چین اتریوم بسیار مهم هستند و به جامعه اجازه میدهند تا قبل از اجرای تغییرات در مورد آنها بحث کنند. چندین نوع مختلف از EIP وجود داشته، مانند EIPهای اصلی برای تغییرات پروتکل سطح پایین که بر اجماع تاثیر میگذارند و برای استانداردهای برنامه نیاز به ارتقای شبکه و ERCها دارند. تمام ارتقاهای شبکه شامل EIPهایی هستند که میبایست توسط تمامی مشتریان اتریوم در شبکه اجرا شوند.
EIPها همچنین نظارت بر اتریوم را تسهیل میکنند، به این صورت که، هر کاربری آزاد است یک EIP را پیشنهاد کرده و پسازآن سهامداران مختلف با بحث و تبادل نظر، تعیین میکنند که آیا این پیشنهاد باید بهعنوان یک استاندارد پذیرفته شده و در ارتقای شبکه گنجانده شود یا خیر.
چهار نوع از EIPهای برلین کدماند؟
هارد فورک برلین دارای چهار نوع پیشنهاد یا تغییر است که در ادامه به آنها اشاره مختصری خواهیم داشت:
توان ماژولار (ModEXP)
پیشنهاد اول هارد فورک برلین EIP-2565 است که بهعنوان ModEXP نیز شناخته میشود. ModEXP پیشنهادی بوده که با تعیین الگوریتم خاص، نحوه تعریف قیمت گس در هنگام افزایش توان ماژولار (Modular exponentiation) را تغییر میدهد. برای کسانی با این موضوع آشنایی کافی ندارند باید گفت ModExp یک عملیات حساب (arithmetic operation) است که در توابع رمزنگاری مختلف استفاده میشود تا شبکه را ایمنتر و کاربردیتر کند.
توان ماژولار یا ModEXP، یک تابع نمایی گسسته بوده که برای توابع رمزنگاری حیاتی است. ازآنجاییکه کامپایلر ModEXP اتریوم نسبتا گران بود، EIP-2565 پیشنهاد کرد که با کاهش قیمت گس مرتبط با استفاده از ModEXP و دستیابی به امنیت و امکان انتخاب تصادفی قویتر از طریق «توابع تاخیر قابلتأیید» (Verifiable Delay Functions)، آن را برای اکثر کاربران قابلاستفادهتر کنند.
یک تابع تاخیر قابل تایید(VDF) تابعی است که ارزیابی آن مستلزم اجرای تعداد معینی از مراحل متوالی بوده و محاسبه آن به زمان مشخصی نیاز دارد؛ اما نتیجه را میتوان بهطور موثر تایید کرد. EIPها استفاده از طیف گستردهتری از توابع رمزنگاری را برای تمامی قراردادهای هوشمند اتریوم ترویج میکنند.
پوشش تراکنش تایپشده (Typed Transaction Envelop)
پیشنهاد دوم هارد فورک برلین EIP-2718 بوده که بهدنبال تعریف یک نوع تراکنش جدید است که برنامهریزیشده باشد تا بتواند بهعنوان یک پوشش (یا همان پاکت) تمام انواع تراکنشهای آینده اتریوم را در برگیرد. اجازه دهید این پیشنهاد را روشنتر بیان کنیم. این پیشنهاد اذعان میدارد که افزودن انواع تراکنشهای جدید اتریوم بسیار دشوار است، زیرا آنها به سازگاری با انواع تراکنشهای قبلی اتریوم نیاز دارند.
EIP 2718 بهدنبال حل این مشکل با معرفی نوعی پوشش (پاکت) برای انواع معاملات آتی است. پروتکل EIP0-2718 همه انواع تراکنشها را پسسازگار (backward compatible) میکند؛ در نتیجه اضافه کردن منطق تراکنشهای جدید به اتریوم آسانتر میشود.
برنامهنویسانی که این پروتکل را ایجاد کردند از یک تابع جدید به نام پوشش تراکنش تایپشده (Typed Transaction Envelope) بهره گرفتند که در ادامه به توضیح آن خواهیم پرداخت، اما در اینجا توضیحی در مورد عبارت پسسازگاری (backward compatibility) لازم به نظر میرسد. مفهوم پسسازگاری یا سازگاری عقبرو یک ویژگی از ابزار یا فناوریهایی است که توانایی کار کردن با ورودیهای درستشده در نسخههای پیش از خود را دارا هستند و این مفهوم غالباً در مخابرات و رایانش مطرح میشود. اگر فراوردهای بنابر استانداردهای جدید درست شده و توانایی خواندن، مشاهده کردن، یا پخش استانداردها و قالبهای پیش از خود را هم داشته باشد، پسسازگار خوانده میشود یا میگوییم دارای پسسازگاری است، مانند راهاندازهای دیسکهای بلو-ری (Blu-ray) که توانایی خواندن دیسکهای لوح فشرده (CD) و دیویدی (DVD) را نیز دارند.
افزایش هزینه گس برای کد عملیاتی دسترسی دولتی (Gas Cost Increases For State Access Opcodes)
پیشنهاد سوم هارد فورک برلین EIP-2929 است که مشترکا توسط ویتالیک بوترین (Vitalik Buterin)، همبنیانگذار اتریوم و مارتین اسوندی (Martin Swende) معرفی شد و مانند EIP-2565 به قیمت گس مربوط میشود. اگرچه EIP-2565 برای کاهش هزینههای گس طراحی شده است، اما EIP-2929 هزینه برخی گسهای خاص مانند عملیات کدهای عملیاتی (Operation Codes) یا همان آپکد (Opcodes) که نیاز به دسترسی به حافظه دارند را افزایش میدهد. این هزینهها از لحاظ تاریخی همواره نسبتا ارزان بودند و در نتیجه حملات محرومسازی از سرویس (Denial-of-Service/ DoS) را تسهیل میکردند.
درحالیکه قیمت کدهای عملیاتی در گذشته نیز اصلاح و افزایش یافته است، اما این افزایش قیمتها نتوانستند بهعنوان یک بازدارنده در برابر حملات محرومسازی از سرویس عمل کنند. دلیل این امر آن است که نفوذ به گرهها برای مشارکت در حملات محرومسازی از سرویس همچنان برای هکرها نسبتا ارزان میباشد. پیادهسازی EIP-2929 هزینه دسترسی به کدهای عملیاتی را سه برابر افزایش میدهد و به رفع این آسیبپذیری کمک میکند. در رایانش، کدهای عملیاتی/ آپکد بخشهایی از زبان ماشین هستند که عملیات را مشخص میکنند. کدهای عملیاتی اتریوم در گذشته نقطهضعفی در برابر حملات محرومسازی از سرویس بودهاند. با ظهور پیشنهاد EIP-2929، هزینه گس افزایش یافته و بنابراین انگیزه حملات محرومسازی از سرویس را برای هکرها از بین میبرد.
فهرستهای دسترسی اختیاری(Optional Access Lists)
درنهایت، هارد فورک برلین دارای پروتکل EIP-2930 یا «فهرستهای دسترسی اختیاری» است که بر مبنای EIP-2718 ساخته شده و مکانیزم نوع تراکنش جدیدی را به ارمغان میآورد که به کاربران امکان میدهد لیست آدرس کیف پول را تشکیل دهند تا بتوانند با هزینههای گس بسیار کمتر معامله کنند.
هدف اصلی پیشنهاد چهارم هارد فورک برلین با عنوان EIP-2930 اعمال اصلاحی برای تغییرات شکسته در قراردادهای موجود و کاهش افزایش هزینه گس است که احتمال دارد پس از اجرای پیشنهاد EIP-2929 رخ دهد. EIP-2930 یک نوع تراکنش حاوی لیست دسترسی (آدرسها و لیست کلیدهای ذخیرهسازی) را اضافه میکند که تراکنش باید به آن دسترسی داشته باشد. هنگامی که لیست دسترسی مشخص شد، پردازش برای مشتریان آسانتر است و هزینههای گس را میتوان کاهش داد.
شبکه اتریوم درحالحاضر راهکارهای مقیاسپذیری متعددی داشته که هرکدام توکنهای حاکمیتی خاص خود را دارند. این راهکارهای متنوع همچنین انتقال توکنها از لایه 1 به لایه 2 را کمی با مشکل مواجه کردهاند. اینجاست که پروتکل هاپ وارد میشود. این پروتکل مکانیزمی را برای تبادل توکنها بین راهکارهای مقیاسپذیری اتریوم فراهم میکند.
پروتکل هاپ یک پل توکن دوطرفه برای شبکه لایه ۲ اتریوم به مشتریان ارائه میدهد. پروتکل هاپ پروتکلی بدون نیاز به اعتماد و غیرمتمرکز است؛ زیرا کاملاً روی زنجیره زندگی میکند. هر کسی که یک نود (گره) اتریوم را اجرا نماید، میتواند با قراردادها تعامل مستقیم داشته باشد. کاربران همچنین میتوانند به پروتکل هاپ برای پل زدن داراییها از طریق سایر رابطهای وب مانند جمعآورندههای پل یا سایر برنامههای غیرمتمرکزی (dApps) که هاپ را بهصورت بومی در قراردادهای هوشمند خود ادغام کردهاند، دسترسی پیدا کنند. نکتهای که در اینجا توضیح آن لازم به نظر میرسد مفهوم شاردینگ است. شاردینگ
(Sharding) یک راهکار مقیاسپذیری بوده که هدف آن بهبود ظرفیت و سرعت تراکنش شبکه اتریوم میباشد. شبکه اصلی اتریوم (Ethereum mainnet) به شبکههای کوچکتر و متصلبههم به نام شارد (به معنی خرده/تکه) تقسیم میشود. هر شارد معاملات و قراردادهای هوشمند خود را بهموازات سایر معاملات و قراردادها پردازش کرده و بهطور قابل توجهی توان عملیاتی شبکه را افزایش میدهد و به کاهش هزینههای گس کمک میکند. شاردینگ همچنین به غیرمتمرکز کردن شبکه اتریوم کمک کرده است.
این کار از طریق توزیع بار تراکنش در بسیاری از نودها، بارِ روی نودهای جداگانه را کاهش میدهد. گس اتریوم (Gwei) ارزش یک میلیاردم اتر، ارز دیجیتال بومی بلاک چین اتریوم است که برای پرداخت بهای تراکنشها بهکار میرود. این نام کوتاه برای gigawei بوده و ترکیبی از کلمه «giga» و «Wei» محسوب میشود که کوچکترین طبقهبندی اتر است. در یک gwei یک میلیارد وی (wei) وجود دارد.
سخن پایانی
همانطور که گفتیم، هارد فورک برلین در ابتدا برای ژوئیه 2020 برنامهریزی شده بود، ولی پسازآن به دلیل نگرانیهای تمرکزگرایی عقب افتاد. این ارتقا زمینه را برای هارد فورک لندن فراهم کرد که شاهد اجرای EIP-1559 بود و تغییرات اساسی در ساختار هزینه گس و امنیت شبکه در اتریوم ایجاد کرد. هارد فورک برلین و هارد فورک لندن نقش مهمی را در مسیر طولانی اتریوم برای انتقال آن به پروتکل اجماع اثبات سهام بر عهده داشتند.