Follow Us
Facebooktwitteryoutube
YouTube
Promo
banner
Promo
banner

تأیید رسمی مشخصات Ethereum 2.0 Phase 0

وبلاگ 1NewsD DevelopersEnterpriseBlockchain ExplainedEvent ها و کنفرانس ها Pressخبرنامه ها

مشترک شدن در خبرنامه ما.

آدرس ایمیل

ما به حریم خصوصی شما احترام می گذاریم

صفحه اصلی وبلاگ توسعه Blockchain

تأیید رسمی مشخصات Ethereum 2.0 Phase 0

به روزرسانی از ConsenSys R&در تلاش آنها برای ایجاد قابلیت اطمینان به Beacon Chain و پایه های اصلی Eth2. توسط Franck Cassez 10 آگوست 2020 ارسال شده در 10 آگوست 2020

dafny قهرمان وبلاگ را تأیید کنید

تیم تأیید خودکار در ConsenSys R&چند ماه است که D روی مشخصات و تأیید رسمی Beacon Chain کار می کند. ما خوشحالیم که گزارش می دهیم که پیشرفتهای زیادی حاصل شده است و اگرچه هنوز کامل نشده است ، اما ما موفق به پیشرفت شده ایم یک هسته جامد و به طور رسمی تأیید شده از Beacon Chain. برای اولین بار ، کار ما یک سطح قابل اعتماد و بی نظیر را برای پایه های اصلی زیرساخت های Eth2.0 فراهم می کند.

روش شناسی

تأیید صحت در مقابل آزمایش

ما از برنده جایزه زبان برنامه نویسی آگاه از تأیید دفنی نوشتن رسمی (عملکردی و منطقی) مشخصات از هر عملکرد Beacon Chain ، یک پیاده سازی از هر تابع ، و اثبات که اجرا مطابق با مشخصات آن است. به عبارت دیگر ، ما از نظر ریاضی فقدان اشکال را تأیید کرده ایم. پیاده سازی هایی که در نهایت ثابت کردیم درست است مشخصات رسمی Eth2.0 با توجه به این نکته که اشکالات و ناسازگاری ها را برطرف کرده و گزارش کرده ایم.

روش ما با آزمایش متفاوت است از نظر ریاضی ثابت کنید انطباق توابع با مشخصات آنها ، برای همه ورودی ها آزمایش نمی تواند بیش از ورودی های بی نهایت باشد و در نتیجه می تواند اشکالاتی را کشف کند اما عدم وجود اشکالات را ثابت نمی کند.

و بهترین چیز این است که ما نیازی به چاپ مقاله یا بررسی ادله اثبات نداریم. اثبات ها بخشی از کد هستند و به عنوان برنامه نوشته شده اند. بله ، در Dafny ، شما می توانید به عنوان یک برنامه توسعه دهنده پسند یک مدرک بنویسید. همچنین اثبات از نظر مکانیکی بررسی می شود توسط یک قضیه اثبات ، جایی برای اثبات ناقص یا ناقص باقی نمی گذارد.

خصوصیاتی که اثبات کرده ایم 

این خواص از نبود حساب زیر / سرریز و فهرست خارج از محدوده, انطباق هر عملکرد با شرایط منطقی (منطق مرتبه اول) منطقی (مثال مرکلیز در اینجا) ، به ترکیبات پیچیده تر که شامل ترکیبات توابع هستند. به عنوان مثال ، موارد زیر را داریم دارایی SSZ سریال / Deserialise توابع: برای هر شی x ، Deserialise (سریال (x)) = x ، یعنی deserialising یک شی سریال ، شی اصلی را برمی گرداند. ما همچنین تاسیس کرده ایم تعداد افراد ثابت, و از آنها استفاده کرد تا ثابت کند عملیات اصلی Beacon Chain و ForkChoice (حالت_حمل ، بلوک شده است) در حقیقت یک زنجیره بلوک بسازید: برای هر بلوک b در فروشگاه ، اجداد b توالی کاملاً مرتب شده ای محدود به بلوک پیدایش را تشکیل می دهند که خاصیت اصلی زنجیره بلوک است!

مزایای تأیید رسمی

هر متدیست رسمی اصرار دارد که تأیید بهترین عمل امنیتی است. دقیقاً در اینجا چگونگی اطمینان از زیرساخت مطمئن و قابل اعتماد برای Ethereum 2.0 در این روش ارائه شده است.


مشخصات عملکردی

اول ، ما مشخصات رسمی Eth2.0 را به یک بالا برده ایم مشخصات منطقی و عملکردی رسمی. برای هر تابع ، ما به طور رسمی تعریف می کنیم انتظار می رود تابع محاسبه شود, نه چگونه این فراهم می کند مشخصات مرجع سازگار با زبان agnostic که می تواند برای توسعه پیاده سازی های ایمن تر ، با تلاش کمتر استفاده شود. 

مدولار بودن

دوم ، مشخصات ، پیاده سازی ها و معماری اثبات ما هستند مدولار. در نتیجه ، ما به راحتی می توانیم آزمایش با پیاده سازی های جدید (به عنوان مثال بهینه سازی ها) و تأثیر آنها را روی کل سیستم بررسی کنید. به یک هک هوشمندانه برای پیاده سازی عملکرد فکر می کنید؟ اجرای را تغییر دهید و از دافنی بخواهید بررسی کند که آیا هنوز با مشخصات آن مطابقت دارد یا خیر. اگر اینگونه باشد ، اثبات اجزایی که از این عملکرد استفاده می کنند تأثیری نمی گذارد.

قابل اجرا بودن

سوم ، پیاده سازی های ما قابل اجرا. ما می توانیم یک برنامه Dafny را کامپایل و اجرا کنیم. حتی بهتر ، می توانید بطور خودکار کد تولید کنید در برخی از زبانهای برنامه نویسی معروف مانند C # ، Go (و به زودی جاوا) از کد Dafny. این را می توان برای تکمیل پایگاه های کد موجود یا برای تولید استفاده کرد آزمونهای گواهی شده. پیاده سازی مورد آزمایش می تواند از توابع صحیح اثبات شده ما برای محاسبه نتیجه مورد انتظار آزمون و بررسی آن در برابر نتیجه خود استفاده کند.   

همه چیز به یک زبان واحد

آخرین اما نه مهمترین ، کد کد ما است خودبزرگ. این شامل مشخصات ، پیاده سازی ها ، اسناد و مدارک اثبات شده است ، همه در یک زبان برنامه نویسی واحد ، قابل خواندن ، ساده و از نظر معنایی کاملاً مشخص.

س Quesالات و ملاحظات 

در مورد صدا بودن موتور تأیید چطور؟?

ممکن است از خود بپرسید ، “اگر کامپایلر / تأیید کننده Dafny اشکالی نداشته باشد ، چه می شود؟” ما واقعاً می دانیم که دفنی حشره دار است (مسائل دفنی دپوی) ، اما ما به عدم وجود اشکال در دفنی اعتماد نمی کنیم. ما به دافنی (و موتور تأیید آن) اعتماد می کنیم صدا. صدا به معنای این است که وقتی دفنی گزارش می دهد که اثبات درست است ، در واقع درست است. 

چه شود اگر مشخصات ما درست نباشد? 

در این صورت ، ما مطابقت با یک نیاز اشتباه را ثابت خواهیم کرد. بله ، این اتفاق می افتد و هیچ گلوله نقره ای برای رفع این مشکل وجود ندارد. با این حال ، همانطور که قبلاً اشاره کردیم ، دفنی قابل اجرا است. این به ما امکان می دهد کد را اجرا کنیم و اطمینان حاصل کنیم که مشخصات ما درست است. و مشخصات ما در منطق مرتبه اول نوشته شده است و جای هیچ مناقشه ای در مورد معنی وجود ندارد ، بنابراین اگر مشکلی مشاهده کردید ، به ما اطلاع دهید و ما آن را برطرف خواهیم کرد.

اگر دفنی نتواند ثابت کند که یک اجرا مطابق با مشخصات است چه می شود? 

این ممکن است اتفاق بیفتد ، اما در این مورد دفنی سازوکارهای بازخوردی دارد که می تواند تحقیق کند چه مراحلی را نمی توان اثبات کرد و تاکنون ، ما همیشه موفق به ساختن مدارکی شده ایم که دافنی به طور خودکار می تواند آنها را بررسی کند.

ما از نظرات شما استقبال می کنیم ، بنابراین لطفا بررسی کنید مخزن eth2.0-dafny ما. ما از دیدن پیشرفت Ethereum 2.0 به نقاط عطف آزمایشگاهی اخیر خود هیجان زده شده ایم و مشتاقانه منتظر کار با تیم هایی در سراسر اکوسیستم هستیم تا اطمینان حاصل کنیم که فاز بعدی شبکه بر روی یک پایه سنگی ساخته شده است.

تقدیر و تشکر: با تشکر از هم تیمی های من جوآن فولر ، روبرتو سالتینی (تیم تأیید خودکار) ، نیکولاس لیوچون ، و اوری اروین برای نظر در مورد نسخه اولیه این پست.

با Ethereum 2.0 همراه باشید

برای دریافت آخرین اخبار Eth2 مستقیماً به صندوق ورودی خود ، در خبرنامه ConsenSys مشترک شوید. برای اطلاع از آخرین اخبار Ethereum ، راه حل های سازمانی ، منابع برنامه نویسی و سایر موارد ، در خبرنامه ما مشترک شوید. نشانی ایمیل محتوای اختصاصیچگونه یک محصول Blockchain موفق بسازیموبینار

چگونه یک محصول Blockchain موفق بسازیم

نحوه تنظیم و اجرای گره Ethereumوبینار

نحوه تنظیم و اجرای گره Ethereum

چگونه API Ethereum خود را بسازیموبینار

چگونه API Ethereum خود را بسازیم

چگونه یک نشانه اجتماعی ایجاد کنیموبینار

چگونه یک نشانه اجتماعی ایجاد کنیم

استفاده از ابزارهای امنیتی در توسعه قرارداد هوشمندوبینار

استفاده از ابزارهای امنیتی در توسعه قرارداد هوشمند

آینده دارایی های دیجیتال مالی و DeFiوبینار

آینده مالی: دارایی های دیجیتال و DeFi

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Adblock
detector