غلتک های خوش بینانه پروتکل های لایه 2 (L2) هستند که برای گسترش توان لایه پایه اتریوم طراحی شده اند. آنها با پردازش معاملات خارج از زنجیره ، محاسبه زنجیره اصلی اتریوم را کاهش می دهند و پیشرفت های قابل توجهی در سرعت پردازش ارائه می دهند. بر خلاف سایر راه حل های مقیاس پذیر ، مانند SIDECHAINS ، Rollups خوش بینانه با انتشار نتایج معامله به صورت زنجیره ای یا زنجیرهای پلاسما ، امنیت را از Maiet به دست می آورند ، که همچنین معاملات مربوط به اتریوم را با اثبات کلاهبرداری تأیید می کند ، اما داده های معامله را در جای دیگر ذخیره می کند.
از آنجا که محاسبات بخش آهسته و گران قیمت استفاده از اتریوم است ، رول های خوش بینانه می توانند تا 10-100X پیشرفت در مقیاس پذیری را ارائه دهند. رولپ های خوش بینانه همچنین معاملات را به عنوان CallData به Ethereum می نویسند و هزینه های گاز را برای کاربران کاهش می دهد.
شما باید صفحات ما را در مقیاس اتریوم و لایه 2 خوانده و درک کرده اید.
روال خوش بینانه چیست؟
یک روال خوش بینانه رویکردی برای مقیاس گذاری اتریوم است که شامل محاسبه محاسبات و ذخیره سازی حالت خارج از زنجیره است. روال های خوش بینانه معاملات را در خارج از اتریوم انجام می دهند ، اما داده های معامله را به عنوان CallData به MainNet ارسال کنید.
قبل از ارسال به اتریوم ، اپراتورهای خوش بین و خوش بینانه چندین معاملات خارج از زنجیره را در دسته های بزرگ جمع می کنند. این رویکرد گسترش هزینه های ثابت در چندین معاملات در هر دسته را امکان پذیر می کند و هزینه های کاربران نهایی را کاهش می دهد. رول های خوش بینانه همچنین از تکنیک های فشرده سازی برای کاهش میزان داده های ارسال شده در اتریوم استفاده می کنند.
روال های خوش بینانه "خوش بینانه" در نظر گرفته می شوند زیرا فرض می کنند معاملات خارج از زنجیره معتبر هستند و اثبات اعتبار برای دسته های معامله ارسال شده در زنجیره را منتشر نمی کنند. این امر رولپ های خوش بینانه را از لیست های آگاهی صفر که اثبات اعتبار رمزنگاری را منتشر می کنند جدا می کند
برای معاملات خارج از زنجیره.
در عوض ، روال های خوش بینانه به یک طرح تهیه کلاهبرداری متکی هستند تا مواردی را که معاملات به درستی محاسبه نمی شوند ، تشخیص دهند. پس از ارسال یک دسته از رول در اتریوم ، یک پنجره زمانی (به نام یک دوره چالش) وجود دارد که در طی آن هر کسی می تواند با محاسبه اثبات کلاهبرداری ، نتایج معامله رولپ را به چالش بکشد
اگر اثبات کلاهبرداری موفق شود ، پروتکل Rollup معامله (ها) را دوباره انتخاب کرده و وضعیت رولپ را بر این اساس به روز می کند. تأثیر دیگر اثبات کلاهبرداری موفقیت آمیز این است که ترتیب سنج مسئول شامل معامله نادرست اجرا شده در یک بلوک یک مجازات را دریافت می کند.
اگر دسته رولپ بعد از گذشت دوره چالش ، بدون چالش باقی بماند (یعنی تمام معاملات به درستی اجرا می شوند) ، در اتریوم معتبر و پذیرفته می شود. برخی دیگر می توانند همچنان بر روی یک بلوک غلتکی تأیید نشده ادامه دهند ، اما با احتیاط: اگر براساس یک معامله نادرست اجرا شده که قبلاً منتشر شده بود ، نتایج معامله معکوس می شود.
چگونه رول های خوش بینانه با اتریوم تعامل دارند؟
رول های خوش بینانه راه حل های مقیاس بندی خارج از زنجیره ای هستند که در بالای اتریوم کار می کنند. هر برنامه خوش بینانه توسط مجموعه ای از قراردادهای هوشمند مستقر در شبکه اتریوم اداره می شود. معاملات خوش بینانه معاملات فرآیند را از زنجیره اصلی اتریوم فرآیند ، اما معاملات خارج از زنجیره (در دسته ها) را به یک قرارداد جمع آوری زنجیره ای ارسال کنید. مانند blockchain Ethereum ، این سابقه معامله تغییر ناپذیر است و "زنجیره رول خوش بینانه" را تشکیل می دهد.
معماری یک غلتک خوش بینانه شامل قسمتهای زیر است:
قراردادهای زنجیره ای: عملکرد خوش بینانه Rollups توسط قراردادهای هوشمند که در اتریوم اجرا می شود کنترل می شود. این شامل قراردادهایی است که بلوک های بازپرداخت را ذخیره می کنند ، به روزرسانی های حالت را در مورد Rollup نظارت می کنند و سپرده های کاربر را ردیابی می کنند. به این معنا ، اتریوم به عنوان لایه پایه یا "لایه 1" برای رول های خوش بینانه عمل می کند.
دستگاه مجازی خارج از زنجیره (VM): اگرچه قراردادهای مدیریت پروتکل خوش بینانه Rollup در اتریوم اجرا می شوند ، پروتکل Rollup محاسبات و ذخیره سازی دولتی را بر روی یک ماشین مجازی دیگر جدا از دستگاه مجازی Ethereum انجام می دهد. VM خارج از زنجیره جایی است که برنامه ها زندگی می کنند و تغییرات دولتی اجرا می شوند. این به عنوان لایه بالایی یا "لایه 2" برای یک رول خوش بینانه عمل می کند.
از آنجا که برنامه های خوش بینانه برای اجرای برنامه هایی که برای EVM نوشته شده یا گردآوری شده اند ، طراحی شده اند ، VM Off Chain بسیاری از مشخصات طراحی EVM را در بر می گیرد. علاوه بر این ، اثبات کلاهبرداری محاسبه شده در زنجیره ای به شبکه اتریوم اجازه می دهد تا اعتبار تغییرات حالت محاسبه شده در VM خارج از زنجیره را اجرا کند.
رول های خوش بینانه به عنوان "راه حل های مقیاس بندی ترکیبی" توصیف می شوند ، زیرا ، در حالی که آنها به عنوان پروتکل های جداگانه وجود دارند ، خصوصیات امنیتی آنها از اتریوم حاصل می شود. از جمله موارد دیگر ، اتریوم صحت محاسبات خارج از زنجیره Rollup و در دسترس بودن داده ها را در پشت محاسبات تضمین می کند. این امر باعث می شود که رول های خوش بینانه از پروتکل های مقیاس پذیر خارج از زنجیره (به عنوان مثال ، SideChains) که برای امنیت به اتریوم اعتماد ندارند ، ایمن تر از پروتکل های مقیاس پذیر خالص زنجیره ای باشد.
رولپ های خوش بینانه برای موارد زیر به پروتکل اصلی اتریوم متکی هستند:
همانطور که گفته شد، جمع آوری های خوش بینانه داده های تراکنش را به عنوان calldata به اتریوم ارسال می کنند. از آنجایی که اجرای زنجیره جمع آوری بر اساس تراکنش های ارسال شده است، هر کسی می تواند از این اطلاعات - که بر روی لایه پایه اتریوم لنگر انداخته اند - برای اجرای وضعیت جمع آوری و تأیید صحت انتقال حالت استفاده کند.
در دسترس بودن داده ها (در یک برگه جدید باز می شود) ↗ بسیار مهم است زیرا بدون دسترسی به داده های حالت، رقبا نمی توانند برای مخالفت با عملیات جمع آوری نامعتبر مدارک تقلب ایجاد کنند. با ارائه اتریوم در دسترس بودن داده ها، خطر فرار اپراتورهای جمع آوری با اعمال مخرب (مانند ارسال بلوک های نامعتبر) کاهش می یابد.
مجموعه های خوش بینانه نیز برای مقاومت در برابر سانسور به اتریوم متکی هستند. در یک جمع بندی خوش بینانه، یک نهاد متمرکز (اپراتور) مسئول پردازش تراکنش ها و ارسال بلوک های جمع آوری به اتریوم است. این چند پیامد دارد:
اپراتورهای جمع آوری می توانند کاربران را با آفلاین شدن کامل یا با امتناع از تولید بلوک هایی که شامل تراکنش های خاصی در آن ها هستند، سانسور کنند.
اپراتورهای جمع آوری می توانند از برداشتن وجوه سپرده شده در قرارداد جمع آوری توسط کاربران جلوگیری کنند و از داده های دولتی لازم برای اثبات مالکیت Merkle جلوگیری کنند. نگه داشتن داده های حالت همچنین می تواند وضعیت جمع آوری را از کاربران پنهان کند و مانع از تعامل آنها با جمع آوری شود.
جمع آوری های خوش بینانه این مشکل را با مجبور کردن اپراتورها به انتشار داده های مرتبط با به روزرسانی های حالت در اتریوم حل می کند. انتشار داده های جمع آوری روی زنجیره دارای مزایای زیر است:
اگر یک اپراتور جمع آوری خوش بینانه آفلاین شود یا تولید دسته های تراکنش را متوقف کند، گره دیگری می تواند از داده های موجود برای بازتولید آخرین وضعیت جمع آوری و ادامه تولید بلوک استفاده کند.
کاربران می توانند از داده های تراکنش برای ایجاد مدارک Merkle که مالکیت وجوه را اثبات می کند و دارایی های خود را از جمع بندی خارج کنند، استفاده کنند.
کاربران همچنین می توانند تراکنش های خود را در L1 به جای ترتیب دهنده ارسال کنند، در این صورت، ترتیب دهنده باید تراکنش را در یک محدوده زمانی مشخص برای ادامه تولید بلوک های معتبر لحاظ کند.
نقش دیگری که اتریوم در زمینه گردآوری های خوش بینانه ایفا می کند، لایه تسویه حساب است. یک لایه حل و فصل کل اکوسیستم بلاک چین را لنگر می اندازد، امنیت را برقرار می کند و در صورت بروز اختلاف در زنجیره دیگری (تجمیع های خوش بینانه در این مورد) که نیاز به داوری دارد، نهایی شدن عینی را فراهم می کند.
Ethereum Maiet قطبی برای جمع آوری خوش بینانه برای اثبات اثبات کلاهبرداری و حل و فصل اختلافات فراهم می کند. علاوه بر این ، معاملات انجام شده بر روی Rollup تنها پس از پذیرش بلوک Rollup در Ethereum نهایی است. هنگامی که یک معامله رول به لایه پایه اتریوم متعهد شد ، نمی توان آن را به عقب برگرداند (به جز در مورد بسیار بعید به سازماندهی زنجیره ای).
چگونه رول های خوش بینانه کار می کنند؟
اجرای معامله و تجمع
کاربران معاملات را به "اپراتورها" ارسال می کنند ، که گره هایی برای پردازش معاملات در زمینه خوش بینانه هستند. همچنین به عنوان "اعتبار سنج" یا "جمع کننده" شناخته می شود ، اپراتور معاملات را جمع می کند ، داده های اساسی را فشرده می کند و بلوک را در اتریوم منتشر می کند.
اگرچه هر کسی می تواند به یک اعتبار سنج تبدیل شود ، اما اعتبار سنجی خوش بینانه باید قبل از تولید بلوک ، دقیقاً مانند یک سیستم اثبات سهام ، پیوند را فراهم کند. اگر اعتبار سنج یک بلوک نامعتبر را ارسال کند یا بر روی یک بلوک قدیمی اما بی ارزش (حتی اگر بلوک آنها معتبر باشد) ، این پیوند را می توان کاهش داد. به این ترتیب ، رولپ های خوش بینانه از مشوق های رمزنگاری اقتصادی برای اطمینان از عملکرد صادقانه اعتبار سنج استفاده می کنند.
انتظار می رود سایر اعتبار سنج ها در زنجیره رولپ خوش بینانه با استفاده از نسخه خود از حالت Rollup ، معاملات ارسالی را انجام دهند. اگر وضعیت نهایی یک اعتبار سنج با وضعیت پیشنهادی اپراتور متفاوت باشد ، آنها می توانند یک چالش را شروع کرده و یک اثبات کلاهبرداری را محاسبه کنند.
برخی از برنامه های خوش بینانه ممکن است از یک سیستم اعتبار سنجی بدون اجازه استفاده کنند و از یک "ترتیب سنج" واحد برای اجرای زنجیره استفاده کنند. مانند یک اعتبار سنج ، Sequencer معاملات را پردازش می کند ، بلوک های Rollup را تولید می کند و معاملات Rollup را به زنجیره L1 (Ethereum) ارسال می کند.
ترتیب سنج با یک اپراتور معمولی متفاوت است زیرا آنها کنترل بیشتری بر سفارش معاملات دارند. همچنین ، ترتیب سنج دسترسی اولویت به زنجیره رولپ را دارد و تنها نهاد مجاز به ارسال معاملات به قرارداد زنجیره ای است. معاملات از گره های غیر توالی یا کاربران معمولی به سادگی در صندوق ورودی جداگانه صف می شوند تا اینکه ترتیب سنج آنها را در یک دسته جدید قرار دهد.
ارسال بلوک های Rollup به Ethereum
همانطور که گفته شد ، اپراتور یک معاملات خوش بینانه معاملات خارج از زنجیره را به یک دسته تبدیل می کند و آن را برای اسناد رسمی به اتریوم می فرستد. این فرایند شامل فشرده سازی داده های مربوط به معامله و انتشار آن در Ethereum به عنوان CallData است.
CallData یک منطقه غیر تعریف شده و غیر مداوم در یک قرارداد هوشمند است که بیشتر مانند حافظه رفتار می کند. در حالی که Calldata به عنوان بخشی از سیاهههای مربوط به تاریخچه Blockchain (در یک برگه جدید باز می شود) ادامه می دهد ، اما به عنوان بخشی از ایالت اتریوم ذخیره نمی شود. از آنجا که CallData هیچ بخشی از حالت اتریوم را لمس نمی کند ، برای ذخیره داده های زنجیره ای ارزان تر است.
کلمه کلیدی CallData همچنین در استحکام برای انتقال آرگومان ها به یک عملکرد قرارداد هوشمند در زمان اجرای استفاده می شود. CallData عملکردی را که در طی یک معامله فراخوانی می شود مشخص می کند و ورودی هایی را به عملکرد به صورت دنباله دلخواه بایت ها نگه می دارد.
در زمینه برنامه های خوش بینانه ، از CallData برای ارسال داده های معامله فشرده شده به قرارداد زنجیره ای استفاده می شود. اپراتور Rollup با فراخوانی عملکرد مورد نیاز در قرارداد Rollup و انتقال داده های فشرده شده به عنوان آرگومان عملکرد ، یک دسته جدید را اضافه می کند. استفاده از CallData هزینه های کاربر را کاهش می دهد زیرا بیشتر هزینه هایی که در آن وارد می شوند از ذخیره داده های زنجیره ای ناشی می شوند.
در اینجا مثالی آورده شده است (در یک برگه جدید افتتاح می شود) ↗ از ارسال دسته ای از جمع آوری برای نشان دادن نحوه کار این مفهوم. Sequencer از روش AppendsoneCerbatch () استفاده کرد و داده های معامله فشرده شده را به عنوان ورودی با استفاده از CallData منتقل کرد.
در هر مقطع زمانی ، وضعیت خوش بینانه (حساب ها ، مانده ها ، کد قرارداد و غیره) به عنوان یک درخت مرکل به نام "درخت دولتی" سازماندهی می شود. ریشه این درخت Merkle (ریشه حالت) ، که به آخرین وضعیت رولپ اشاره دارد ، در قرارداد رولپه شده و ذخیره می شود. هر انتقال ایالتی روی زنجیره ، حالت جدیدی را تولید می کند ، که یک اپراتور با محاسبه ریشه حالت جدید به آن متعهد می شود.
اپراتور موظف است هنگام ارسال دسته ها ، ریشه های دولت قدیمی و ریشه های دولت جدید را ارسال کند. اگر ریشه حالت قدیمی با ریشه دولت موجود در قرارداد زنجیره ای مطابقت داشته باشد ، دومی دور ریخته می شود و با ریشه حالت جدید جایگزین می شود.
اپراتور Rollup همچنین موظف است برای خود دسته معامله ، ریشه Merkle را مرتکب شود. این به هر کسی اجازه می دهد تا با ارائه یک اثبات مرکل ، درج معامله در دسته (در L1) را اثبات کند.
تعهدات دولتی ، به ویژه ریشه های ایالتی ، برای اثبات صحت تغییرات دولت در یک روال خوش بینانه ضروری است. قرارداد Rollup بلافاصله پس از ارسال ، ریشه های دولت جدید را از اپراتورها می پذیرد ، اما بعداً می تواند ریشه های ایالتی نامعتبر را برای بازگرداندن بازگرداندن به وضعیت صحیح خود حذف کند.
همانطور که توضیح داده شد ، رول های خوش بینانه به هر کسی امکان می دهد بدون ارائه اثبات اعتبار ، بلوک هایی را منتشر کند. با این حال ، برای اطمینان از ایمن بودن زنجیره ، رول های خوش بینانه یک پنجره زمانی را مشخص می کنند که در طی آن هر کسی می تواند یک انتقال دولت را مورد اختلاف قرار دهد. از این رو ، بلوک های چرخشی "ادعاها" نامیده می شوند زیرا هر کسی می تواند اعتبار خود را مورد اختلاف قرار دهد.
اگر کسی ادعای خود را مخالفت کند ، پروتکل رولپ محاسبه ضد تقلب را آغاز می کند. هر نوع اثبات کلاهبرداری تعاملی است - کسی باید قبل از اینکه شخص دیگری بتواند آن را به چالش بکشد ، ادعا کند. این تفاوت در چند دور تعامل برای محاسبه اثبات کلاهبرداری است.
طرح های اثبات تعاملی تک دور ، معاملات مورد اختلاف را در L1 پخش می کنند تا ادعاهای نامعتبر را تشخیص دهند. پروتکل Rollup با استفاده از یک قرارداد تأیید کننده ، دوباره از معامله مورد اختلاف در L1 (Ethereum) تقلید می کند ، و ریشه حالت محاسبه شده تعیین می کند که چه کسی برنده این چالش می شود. اگر ادعای چلنجر در مورد وضعیت صحیح رولپ صحیح باشد ، اپراتور با کاهش پیوند آنها مجازات می شود.
با این حال ، انجام معاملات مجدد در L1 برای تشخیص کلاهبرداری ، نیاز به انتشار تعهدات دولتی برای معاملات فردی دارد و افزایش داده ها باید در زنجیره ای منتشر شود. پخش مجدد معاملات نیز هزینه های قابل توجهی را در بر می گیرد. به همین دلایل ، رولپ های خوش بینانه در حال تغییر به اثبات تعاملی چند دور هستند ، که به همان هدف (یعنی تشخیص عملیات رول نامعتبر) با راندمان بیشتر می رسد.
اثبات تعاملی چند دور
اثبات تعاملی چند دور شامل یک پروتکل عقب و جلو بین Asserter و Challenger است که توسط یک قرارداد تأیید کننده L1 نظارت می شود ، که در نهایت تصمیم می گیرد که طرف دروغگو باشد. پس از اینکه یک گره L2 یک ادعا را به چالش می کشد ، Asserter موظف است ادعای مورد اختلاف را به دو نیمه مساوی تقسیم کند. هر ادعای فردی در این حالت شامل مراحل محاسبات دیگری خواهد بود.
پس از آن ، چلنجر چه ادعایی را که می خواهد به چالش بکشد انتخاب می کند. فرآیند تقسیم (به نام "پروتکل بی نظیر") ادامه می یابد تا اینکه هر دو طرف در حال ادعای درباره یک مرحله واحد از اجرای هستند. در این مرحله ، قرارداد L1 با ارزیابی دستورالعمل (و نتیجه آن) برای گرفتن حزب کلاهبرداری ، اختلاف را حل می کند.
Asserter موظف است "اثبات یک مرحله ای" را تأیید کند که اعتبار محاسبات تک مرحله ای مورد مناقشه را تأیید کند. اگر Asserter نتواند اثبات یک مرحله ای را ارائه دهد ، یا تأیید کننده L1 اثبات نامعتبر باشد ، آنها این چالش را از دست می دهند.
برخی از یادداشت ها در مورد این نوع اثبات کلاهبرداری:
اثبات تقلب تعاملی چند دور کارآمد تلقی می شود زیرا کاری را که زنجیره L1 باید در داوری اختلاف انجام دهد ، به حداقل می رساند. به جای پخش مجدد کل معامله ، زنجیره L1 فقط باید یک قدم را در اجرای Rollup دوباره انتخاب کند.
پروتکل های بیسیکاسیون میزان داده های ارسال شده در زنجیره را کاهش می دهد (نیازی به انتشار تعهدات دولتی برای هر معامله نیست). همچنین ، معاملات نورد خوش بینانه با محدودیت گاز اتریوم محدود نمی شود. برعکس ، روال های خوش بینانه معاملات مجدد باید اطمینان حاصل کنند که یک معامله L2 از محدودیت گاز کمتری برای تقلید از اجرای خود در یک معامله اتریوم واحد برخوردار است.
بخشی از اوراق قرضه Asserter به رقیب اعطا می شود ، در حالی که قسمت دیگر سوخته است. سوزش از تبانی در بین اعتبار سنج ها جلوگیری می کند. اگر دو اعتبار سنج برای شروع چالش های جعلی تبانی کنند ، آنها هنوز هم بخش قابل توجهی از کل سهام را از بین می برند.
اثبات تعاملی چند دور نیاز به هر دو طرف (Asserter و Challenger) برای انجام حرکات در پنجره زمانی مشخص است. عدم عمل قبل از پایان مهلت ، باعث می شود که طرف پیش فرض این چالش را از بین ببرد.
چرا اثبات کلاهبرداری مهم برای غلتک های خوش بینانه است
اثبات کلاهبرداری از اهمیت بالایی برخوردار است زیرا آنها نهایی بودن بی اعتماد را در غلتک های خوش بینانه تسهیل می کنند. Finality Finality یک کیفیت از مجموعه های خوش بینانه است که تضمین می کند یک معامله - تا زمانی که معتبر باشد - در نهایت تأیید می شود.
گره های مخرب می توانند با شروع چالش های دروغین ، تأیید یک بلوک معتبر را به تأخیر بیندازند. با این حال ، اثبات کلاهبرداری در نهایت اعتبار بلوک Rollup را اثبات می کند و باعث تأیید آن می شود.
این همچنین به یکی دیگر از ویژگی های امنیتی رولپ های خوش بینانه مربوط می شود: اعتبار زنجیره به وجود یک گره صادقانه متکی است. گره صادقانه می تواند با ارسال ادعاهای معتبر یا اختلافات نامعتبر ، زنجیره را به درستی پیش ببرد. به هر صورت ، گره های مخرب که با گره صادقانه درگیر اختلاف می شوند ، در طی مراحل اثبات تقلب ، سهام خود را از دست می دهند.
رول های خوش بینانه برای قابلیت همکاری با Ethereum Maiet طراحی شده و به کاربران امکان می دهد پیام ها و داده های دلخواه بین L1 و L2 را منتقل کنند. آنها همچنین با EVM سازگار هستند ، بنابراین می توانید DAPP های موجود را به سمت رول های خوش بین و یا ایجاد DAPP های جدید با استفاده از ابزارهای توسعه Ethereum بفرستید.
1. حرکت دارایی
ورود به Rollup
برای استفاده از یک رول خوش بینانه ، کاربران ETH ، نشانه های ERC-20 و سایر دارایی های پذیرفته شده را در قرارداد پل Rollup در L1 واریز می کنند. قرارداد پل معامله را به L2 منتقل می کند ، جایی که یک مقدار معادل دارایی ذوب می شود و به آدرس انتخاب شده کاربر در مورد خوش بینانه ارسال می شود.
User-generated transactions (like an L1>سپرده L2) معمولاً در صف قرار می گیرند تا زمانی که ترتیب سنج دوباره آنها را به قرارداد رولپرداز ارسال کند. با این حال ، برای حفظ مقاومت در برابر سانسور ، رولپ های خوش بینانه به کاربران امکان می دهند در صورت تأخیر از حداکثر زمان مجاز ، یک معامله را مستقیماً به قرارداد رولپ در زنجیره ارسال کنند.
برخی از برنامه های خوش بینانه یک رویکرد ساده تر را برای جلوگیری از دنباله ها از سانسور کاربران اتخاذ می کنند. در اینجا ، یک بلوک توسط کلیه معاملات ارسال شده به قرارداد L1 از زمان بلوک قبلی (به عنوان مثال سپرده ها) علاوه بر معاملات پردازش شده در زنجیره رول تعریف شده است. اگر یک ترتیب سنج یک معامله L1 را نادیده بگیرد ، ریشه حالت اشتباه (قابل اثبات) را منتشر می کند. بنابراین ، ترتیب سنج ها نمی توانند پیام های تولید شده توسط کاربر را یک بار در L1 ارسال کنند.
خروج از رول
Withdrawing from an optimistic rollup to Ethereum is more difficult owing to the fraud proving scheme. If a user initiates an L2>معاملات L1 برای برداشت وجوه سپرده شده در L1 ، آنها باید منتظر بمانند تا دوره چالش - که تقریباً هفت روز است - از بین برود. با این وجود ، روند عقب نشینی خود نسبتاً ساده است.
پس از شروع درخواست عقب نشینی در L2 Rollup ، معامله در دسته بعدی گنجانده شده است ، در حالی که دارایی های کاربر روی رول سوخته می شوند. پس از انتشار دسته ای در اتریوم ، کاربر می تواند اثبات Merkle را تأیید کند که تأیید معامله خروج خود را در بلوک تأیید می کند. سپس این مسئله است که در طول مدت تأخیر انتظار برای نهایی کردن معامله در L1 و برداشت وجوه به Maiet است.
برای جلوگیری از انتظار یک هفته قبل از برداشت وجوه به اتریوم ، کاربران خوش بینانه می توانند از ارائه دهنده نقدینگی (LP) استفاده کنند. یک ارائه دهنده نقدینگی مالکیت برداشت در انتظار L2 را در نظر می گیرد و کاربر را در L1 (در ازای هزینه) می پردازد.
ارائه دهندگان نقدینگی می توانند قبل از انتشار وجوه ، اعتبار درخواست برداشت کاربر (با اجرای خود زنجیره ای) را بررسی کنند. به این ترتیب آنها اطمینان دارند که معامله در نهایت تأیید می شود (یعنی نهایی بودن بی اعتماد).
2. سازگاری EVM
برای توسعه دهندگان ، مزیت رولپ های خوش بینانه سازگاری آنها - یا بهتر ، معادل سازی - با دستگاه مجازی Ethereum (EVM) است. برنامه های سازگار با EVM با مشخصات موجود در کاغذ زرد Ethereum (در یک برگه جدید باز می شوند) ↗ و از EVM در سطح بایت پشتیبانی می کنند.
سازگاری EVM در رولپ های خوش بینانه مزایای زیر را دارد:
من. توسعه دهندگان می توانند قراردادهای هوشمند موجود در اتریوم را به زنجیرهای خوش بین و بدون نیاز به تغییر گسترده کد های کد منتقل کنند. این می تواند تیم های توسعه را هنگام استقرار قراردادهای هوشمند Ethereum در L2 صرفه جویی کند.
ii. توسعه دهندگان و تیم های پروژه با استفاده از برنامه های خوش بینانه می توانند از زیرساخت های اتریوم استفاده کنند. این شامل زبانهای برنامه نویسی ، کتابخانه های کد ، ابزارهای آزمایش ، نرم افزار مشتری ، زیرساخت های استقرار و غیره است.
استفاده از ابزار موجود مهم است زیرا این ابزارها طی سالها به طور گسترده حسابرسی ، اشکال زدایی و بهبود یافته اند. همچنین نیاز به توسعه دهندگان اتریوم را برای یادگیری چگونگی ساخت با یک پشته توسعه کاملاً جدید برطرف می کند.
3. تماس های قرارداد زنجیره ای متقابل
کاربران (حسابهای متعلق به خارجی) با ارسال معامله به قرارداد Rollup یا داشتن ترتیب سنج یا اعتبار سنج ، با قراردادهای L2 در تعامل هستند. رولپ های خوش بینانه همچنین به حساب های قرارداد در اتریوم اجازه می دهد تا با قراردادهای L2 با استفاده از قراردادهای پل برای انتقال پیام ها و انتقال داده ها بین L1 و L2 ارتباط برقرار کنند. این بدان معنی است که شما می توانید یک قرارداد L1 را در Ethereum Maiet برنامه ریزی کنید تا از توابع متعلق به قراردادهای مربوط به L2 خوش بینانه استفاده کنید.
تماس های قرارداد زنجیره ای به صورت ناهمزمان اتفاق می افتد-به معنای تماس ابتدا آغاز می شود ، سپس در زمان بعدی اجرا می شود. این متفاوت از تماس های بین دو قرارداد در اتریوم است ، جایی که تماس بلافاصله نتیجه می گیرد.
نمونه ای از تماس قرارداد زنجیره ای متقاطع ، سپرده توکن است که در ابتدا توضیح داده شده است. یک قرارداد در L1 نشانه های کاربر را سپرده می دهد و پیامی را به یک قرارداد زوج L2 ارسال می کند تا مقدار مساوی از نشانه های موجود در آن را نعناع کند.
از آنجا که تماس های پیام زنجیره ای منجر به اجرای قرارداد می شود ، فرستنده معمولاً برای تأمین هزینه های گاز برای محاسبه موظف است. توصیه می شود برای جلوگیری از عدم موفقیت معامله در زنجیره هدف ، محدودیت گاز بالایی را تعیین کنید. سناریوی پل زدن نمونه نمونه خوبی است. اگر طرف L1 معامله (واریز نشانه ها) کار کند ، اما سمت L2 (نشانه های جدید) به دلیل گاز کم شکست می خورد ، سپرده غیرقابل برگشت می شود.
Finally, we should note that L2> L1 message calls between contracts need to account for delays (L1>تماس های L2 به طور معمول بعد از چند دقیقه اجرا می شوند). این امر به این دلیل است که پیام های ارسال شده به Maiet از رولپ خوش بینانه تا زمانی که پنجره چالش منقضی نشود ، قابل اجرا نیستند.
هزینه های رولپ خوش بینانه چگونه کار می کند؟
غلتک های خوش بینانه از یک طرح هزینه بنزین ، دقیقاً مانند اتریوم ، برای نشان دادن میزان پرداخت کاربران در هر معامله استفاده می کنند. هزینه های پرداخت شده در مورد غلتک های خوش بینانه به اجزای زیر بستگی دارد:
نوشتن حالت: رولپ های خوش بینانه داده های معامله و هدرهای بلوک (متشکل از هشدار بلوک قبلی ، ریشه حالت ، ریشه دسته ای) را به Ethereum به عنوان CallData منتشر می کنند. حداقل هزینه معامله اتریوم 21000 گاز است. روال های خوش بینانه می توانند با استفاده از معاملات متعدد در یک بلوک واحد (که گاز 21K را بیش از چندین معاملات کاربر کاهش می دهد) هزینه نوشتن معامله را به L1 کاهش دهد.
CallData: فراتر از هزینه معاملات پایه ، هزینه هر ایالت نوشتن بستگی به اندازه CallData ارسال شده به L1 دارد. هزینه های Calldata در حال حاضر توسط EIP-1559 اداره می شود (در یک برگه جدید باز می شود) ، که به ترتیب 16 گاز برای بایت های غیر صفر و 4 گاز برای صفر بایت Calldata را تعیین می کند. برای کاهش هزینه های کاربر ، اپراتورهای Rollup معاملات را فشرده می کنند تا تعداد بایت های CallData منتشر شده در Ethereum را کاهش دهند.
هزینه های اپراتور L2: این مبلغ پرداخت شده به گره های جمع آوری شده به عنوان جبران هزینه های محاسباتی که در پردازش معاملات انجام می شود ، دقیقاً مانند هزینه گاز در اتریوم. گره های Rollup هزینه های معامله کمتری را از آنجا که L2 ها دارای ظرفیت پردازش بالاتری هستند و با ازدحام شبکه روبرو نیستند که اعتبار سنج ها را در اتریوم مجبور به اولویت بندی معاملات با هزینه های بالاتر می کند.
برنامه های خوش بینانه چندین مکانیسم را برای کاهش هزینه ها برای کاربران ، از جمله دسته بندی معاملات و فشرده سازی CallData برای کاهش هزینه های انتشار داده ها اعمال می کنند. می توانید ردیاب هزینه L2 را بررسی کنید (در یک برگه جدید باز می شود) ↗ برای یک مرور کلی در مورد میزان هزینه استفاده از برنامه های خوش بینانه مبتنی بر اتریوم هزینه می شود.
چگونه رولپ های خوش بینانه Ethereum را مقیاس می کنند؟
همانطور که توضیح داده شد ، رولپ های خوش بینانه داده های معامله فشرده شده را در اتریوم منتشر می کنند تا در دسترس بودن داده ها تضمین شود. امکان فشرده سازی داده های منتشر شده در زنجیره برای مقیاس بندی توان در اتریوم با رول های خوش بینانه بسیار مهم است.
زنجیره اصلی Ethereum محدودیت هایی را در مورد میزان بلوک های داده ، در واحدهای گازی محدود می کند (میانگین اندازه بلوک 15 میلیون گاز است). در حالی که این امر چقدر گاز هر معامله را محدود می کند ، همچنین به این معنی است که ما می توانیم با کاهش داده های مرتبط با معامله ، معاملات پردازش شده در هر بلوک را افزایش دهیم-به طور مستقیم بهبود مقیاس پذیری.
رولپ های خوش بین از تکنیک های مختلفی برای دستیابی به فشرده سازی داده های معامله و بهبود نرخ TPS استفاده می کنند. به عنوان مثال ، این مقاله (در یک برگه جدید افتتاح می شود) ↗ داده هایی را که یک معامله اصلی کاربر (ارسال اتر) در Maiet ایجاد می کند ، مقایسه می کند در مقابل اینکه چه مقدار داده همان معامله را در یک برنامه تولید می کند:
پارامتر
اتریوم (L1)
Rollup (L2)
غیر معذب
~3
0
قیمت
~8
0-0. 5
گاز
3
0-0. 5
To
21
4
ارزش
9
~3
امضاء
~68 (2 + 33 + 33)
~0.5
از جانب
0 (بازیابی از سیگ)
4
جمع
~112 بایت
~12 بایت
انجام برخی از محاسبات خشن در مورد این ارقام می تواند به بهبود مقیاس پذیری که توسط یک رول خوش بینانه ارائه می شود ، کمک کند:
اندازه هدف برای هر بلوک 15 میلیون گاز است و برای تأیید یک بایت داده 16 گاز دارد. تقسیم میانگین اندازه بلوک به 16 گاز (15،000،000/16) نشان می دهد که میانگین بلوک می تواند 937. 500 بایت داده را در خود جای دهد.
اگر یک معامله اصلی Rollup از 12 بایت استفاده کند ، آنگاه بلوک Ethereum می تواند 78125 معاملات رولپ (937،5000/12) یا 39 دسته رولپ را پردازش کند (اگر هر دسته به طور متوسط 2،000 معاملات داشته باشد).
اگر یک بلوک جدید در اتریوم هر 15 ثانیه تولید شود ، سرعت پردازش Rollup تقریباً 5،208 معاملات در ثانیه خواهد بود. این کار با تقسیم تعداد معاملات اساسی رولپه انجام می شود که یک بلوک اتریوم می تواند (78125) را با میانگین زمان بلوک (15 ثانیه) نگه دارد.
این یک تخمین نسبتاً خوش بینانه است ، با توجه به اینکه معاملات خوش بین و خوش بینانه نمی تواند یک کل کل در اتریوم را تشکیل دهد. با این حال ، این می تواند ایده ای خشن در مورد میزان دستیابی به مقیاس پذیری که می تواند به کاربران Ethereum بدهد ، چقدر دستاوردهای مقیاس پذیری ارائه دهد (پیاده سازی های فعلی حداکثر 2000 TP را ارائه می دهند).
انتظار می رود معرفی داده های داده در اتریوم باعث بهبود مقیاس پذیری در رول های خوش بینانه شود. از آنجا که معاملات Rollup باید فضای blockspace را با سایر معاملات غیر رول به اشتراک بگذارد ، ظرفیت پردازش آنها با توان داده در زنجیره اصلی اتریوم محدود است. Danksharding فضای موجود در زنجیرهای L2 را برای انتشار داده ها در هر بلوک افزایش می دهد ، به جای CallData گران قیمت و دائمی ، با استفاده از ذخیره ارزان تر و غیرقابل انکار "حباب".
جوانب مثبت و منفی رولپ های خوش بینانه
طرفداران
منفی
پیشرفت های گسترده ای در مقیاس پذیری بدون قربانی کردن امنیت یا بی اعتماد ارائه می دهد.
تأخیر در نهایی معامله به دلیل چالش های احتمالی کلاهبرداری.
داده های معامله در زنجیره لایه 1 ذخیره می شود ، شفافیت ، امنیت ، مقاومت در برابر سانسور و عدم تمرکز را بهبود می بخشد.
اپراتورهای متمرکز رول (ترتیب سنج) می توانند بر سفارش معامله تأثیر بگذارند.
اثبات تقلب ، نهایی بودن بی اعتماد را تضمین می کند و به اقلیت های صادقانه اجازه می دهد تا زنجیره را تأمین کنند.
در صورت وجود گره های صادقانه ، اپراتور مخرب می تواند با ارسال بلوک های نامعتبر و تعهدات دولتی ، وجوه را سرقت کند.
محاسبات تقلب بر خلاف اثبات اعتبار (که در ZK-Rollups استفاده می شود) که به سخت افزار خاصی نیاز دارند ، برای گره معمولی L2 باز است.
مدل امنیتی حداقل به یک گره صادقانه که معاملات رولپ را اجرا می کند متکی است و اثبات کلاهبرداری را برای به چالش کشیدن انتقال نامعتبر دولت ارائه می دهد.
Rollups از "زندگی بی اعتماد" بهره مند می شود (هر کسی می تواند با اجرای معاملات و ارسال ادعاها ، زنجیره ای را وادار کند)
کاربران باید قبل از بازگرداندن وجوه به اتریوم منتظر پایان دوره چالش یک هفته باشند.
رولپ های خوش بینانه برای افزایش امنیت در زنجیره به مشوق های رمزنگاری شده با اقتصاد متکی هستند.
Rollups باید تمام داده های معامله را بصورت زنجیره ای ارسال کند ، که می تواند هزینه ها را افزایش دهد.
سازگاری با EVM و استحکام به توسعه دهندگان این امکان را می دهد تا قراردادهای هوشمند بومی Ethereum را به صورت رول و یا از ابزار موجود برای ایجاد DAPP های جدید استفاده کنند.
توضیح بصری از رول های خوش بینانه
بیشتر از یک یادگیرنده بصری؟تماشای finematics توضیحات خوش بینانه:
از رول های خوش بینانه استفاده کنید
پیاده سازی های متعدد از رولپ های خوش بینانه وجود دارد که می توانید در DAPP های خود ادغام شوید:
orbitrum one
* اثبات کلاهبرداری فقط برای کاربران لیست سفید ، لیست سفید هنوز باز نشده است
وب سایت (در یک برگه جدید باز می شود)
اسناد توسعه دهنده (در یک برگه جدید باز می شود)
خلاصه فناوری و ریسک (در یک برگه جدید افتتاح می شود)
خوش بینی
* اثبات گسل در توسعه
وب سایت (در یک برگه جدید باز می شود)
اسناد توسعه دهنده (در یک برگه جدید باز می شود)
خلاصه فناوری و ریسک (در یک برگه جدید افتتاح می شود)
شبکه
* اعتبار سنجی دولت در توسعه
وب سایت (در یک برگه جدید باز می شود)
اسناد توسعه دهنده (در یک برگه جدید باز می شود)
خلاصه فناوری و ریسک (در یک برگه جدید افتتاح می شود)
مطالعه بیشتر در مورد رول های خوش بینانه
چگونه رولپ های خوش بینانه کار می کنند (راهنمای کامل) (در یک برگه جدید باز می شود)
هر آنچه را که باید در مورد رولپ خوش بینانه بدانید (در یک برگه جدید باز می شود)
راهنمای اساسی Arbitrum (در یک برگه جدید باز می شود)
چگونه Rollup Optivism واقعاً کار می کند؟(در یک برگه جدید باز می شود)
شیرجه عمیق OVM (در یک برگه جدید باز می شود)
ماشین مجازی خوش بینانه چیست؟(در یک برگه جدید باز می شود)
تجارت گزینه های دودویی در ایران...
ما را در سایت تجارت گزینه های دودویی در ایران دنبال می کنید