معرفی ۴۰ پلتفرم قرارداد هوشمند (بخش 4)

بلاکچین در حال تغییر دنیایی است که می‌شناسیم. این فناوری یکی از بزرگترین مشکلات انسان را حل می‌کند: نیاز به اعتماد به یک واسطه را از بین می‌برد. روشی که بلاکچین از آن برای حل این مشکل استفاده می‌کند، ایجاد قابلیت پیگیری غیر قابل تغییر از هر چیزی است که برای مقیاس پذیرییت، به اعتماد به واسطه‌ها نیاز دارد. اما در این فناوری قدرت زیادی نهفته است: قدرت ایجاد قوانینی که باید به همان شکلی که نوشته شده‌اند پیروی شوند، که در آن هر کنشی منجر به واکنشی می‌شود. به عبارت دیگر، قرارداد هوشمند. در این مقاله ۴۰ پلتفرم/ پروژه فهرست شده‌اند که قراردادهای هوشمند را پشتیبانی می‌کنند/توسعه می‌دهند. هدف این مقاله ارزیابی پلتفرم‌ها/ پروژه‌ها بر مبنای عواملی است که قابلیت قرارداد هوشمند آن‌ها را تحت تاثیر قرار می‌دهند و نه ویژگی‌های کلی آن‌ها.

0 217
برای مطالعه بخش اول اینجا,بخش دوم این مقاله اینجا و بخش سوم اینجا کلیک کنید.

24. https://dfinity.org) DEFINITY/)

زبان قرارداد هوشمند: Solidity

وضعیت: غیر فعال

توضیح: DFINITY خود را «خواهر دیوانه» اتریوم نامیده است تا شباهت ژنتیکی نزدیک خود به اتریوم را بیان کند. تفاوت آن با اتریوم تمرکز آن بر عملکرد و مدل حاکمیت الهام‌گرفته از سیستم عصبی است.

ایده این است که برخی از قراردادها/dappها ممکن است به جای بستری مانند اتریوم که در آن‌ها «کد قانون است»، برای بستر حاکمیت الگوریتمی مناسبتر باشند (قابل بحث). پروژه DFINITY در حال حاضر جایی بین نمونه اولیه و تولید قرار دارد؛ در زمان نگارش، یک بلاک‌چین عمومی وجود ندارد که بتواند قراردادهای هوشمند را بر آن پیاده کرد.

بزرگترین برگ برنده DFINITY سیستم عصبی بلاک‌چین (BNS) و عملکرد و مقیاس پذیری بالای آن است. اما یکی از چیزهایی که درک ما از قراردادهای هوشمند را تحت تاثیر قرار می‌دهد (همانطور که در بالا ذکر شد) حاکمیت OnChain آن است.

معرفی ۴۰ پلتفرم قرارداد هوشمند

سازوکار حاکمیت OnChain DFINITY امکان ارتقاء پروتکل‌ها (و بیشتر) را بدون نیاز به هارد فورک کردن شبکه فراهم می‌سازد. این ویژگی تا حدی شبیه ایده Tezos است، اما DFINITY از EVM و solidity استفاده خواهد کرد، به طوری که هر قرارداد قابل پیاده‌سازی در اتریوم را می‌توان در DFINITY نیاز پیاده کرد.

کسانی که با سکه‌های خود در یک «عصب»‌ «سهم‌گیری» می‌کنند، قدرت رأیی متناسب با سهم خود به دست می‌آورند. BNS مجموعه‌ای از تمام اعصاب شبکه است. هر کس می‌تواند یک پیشنهاد به شبکه ارسال کند و کسانی که با سکه‌های خود سهم‌گیری می‌کنند می‌توانند در مورد پیشنهادها رای دهند. یک پیشنهاد می‌تواند:

  • قراردادهای هوشمند/dappها را فریز کند: ممکن است شبکه بخواهد dappهایی را فریز کند که برای فعالیت مجرمانه مورد استفاده قرار گرفته‌اند و غیره.
  • تراکنش معکوس: در رویدادی که در آن باگی کشف شده و قرارداد هوشمند و میلیون‌ها دلار به سرقت یا مفقود شده‌اند (مانند DAO یا حادثه Parity)، شبکه می‌تواند بدون نیاز به هارد فورک، به بازگرداندن وجوه از دست رفته رای دهد.
  • ویرایش کد قرارداد هوشمند: یک dapp محبوب را تصور کنید که در شبکه عرضه شده است، میلیون‌ها نفر از این برنامه استفاده می‌کنند ولی باگی در آن کشف شده است. در شبکه اتریوم، هیچ راهی برای اصلاح این dapp وجود ندارد. تنها کاری که می‌توانید انجام دهید این است که کد را اصلاح کنید و یک قرارداد هوشمند کاملا جدید عرضه کنید. در DFINITY، شما می‌توانید یک پیشنهاد به شبکه ارسال کنید و اگر جامعه به آن رای مثبت دهد، باگ را اصلاح کنید. تنها راه ویرایش یک قرارداد هوشمند به این شکل در شبکه اتریوم هارد فورک کردن است.
  • ارتقاء پروتکل: تصور کنید که بیت کوین می‌توانست ویژگی‌های تمام آلتکوین‌های پس از خود را جذب کند. چه می‌شد اگر بیت کوین به جای ایجاد ارزهای جدید مانند Zcash و اتریوم و غیره فقط ویژگی‌های مربوط به تراکنش‌های خصوصی و قراردادهای هوشمند و غیره را اضافه می‌کرد. دیگر نیازی به وجود ارزهای دیگر نبود. این قدرت بالقوه DFINITY است، زیرا BNS می‌تواند بدون نیاز به هارد فورک پروتکل را ارتقا دهد. دلیل اینکه بیت کوین قادر به چنین کاری نیست این است که ۱. مردم نمی‌توانند در مورد اینکه کدام ویژگی‌ها به بیت کوین اضافه شود توافق کنند و ۲. افزودن ویژگی‌های جدید به پروتکل مانند موارد ذکر شده نیازمند یک هارد فورک است. DFINITY این مشکل را حل کرده است.

۲۵. https://boscoin.io) BOScoin/)

زبان قرارداد هوشمند: زبان Ontology وب

وضعیت: غیر فعال

توضیح: برخلاف بسیاری از طرح‌های قرارداد هوشمند که در بالا ذکرشان رفت، قراردادهای اعتماد BOSCoin با زبان Ontology وب و از نظریه اتوماتا (Automata) استفاده کرده و قصد دارند تصمیم‌پذیر باشند. بیایید نگاهی دقیقتر به این اجزا و نحوه همکاری آن‌ها بیندازیم.

زبان Ontology وب

OWL مخفف زبان Ontology وب و اساس آن زبان وب معنایی W3C است. تحت قراردادهای اعتماد بستر BOS، هدف اجزای OWL تفسیر ساختار زبانی قراردادهای هوشمند از جمله رشته‌های کدنویسی و جملات است.

کنسرسیوم جهانی وب (W3C)، یک جامعه بین‌المللی است که استانداردهای باز مربوط به دیرپایی شبکه جهانی وب را جهت پشتیبانی از وب داده توسعه می‌دهد. بخشی از کار آن‌ها ایجاد یک زبان وب معنایی با هدف نماندگی دانش غنی و پیچیده در مورد اشیا، گروه اشیا و رابطه بین اشیا است.

زبان معنایی وب (https://www.w3.org/standards/semanticweb/) ۵ جزء اصلی دارد:

  • داده‌ها دارای پیوند: صفاتی از جمله تاریخ‌ها و عناوین و پارت‌نامبرها و خواص شیمیایی که بانک اطلاعاتی جهت درک زبان‌ها به کار می‌گیرد.
  • واژه‌ها: زبان‌ها به تعاریف بنیادی خود تفکیک می‌شوند (یعنی مفاهیم و روابط)
  • استعلام: ابزار مورد استفاده جهت بازیابی اطلاعات از پایگاه‌های داده
  • استنتاج: استدلال‌گری (reasoner) که مجموعه‌ای از داده‌های جمع‌آوری‌شده را پردازش و تفسیر می‌کند (یعنی از طریق قوانین یا آمیختن داده‌های متنوع از منابع گوناگون)
  • کارکردهای عمودی: جزء سرمایه‌گذاری خطرپذیر تجاری W3C که جهت بهبود تحقیق و توسعه و همکاری با صنایع مختلف همکاری می‌کند؛ به این مقاله مربوط نیست.

از وب معنایی W3C، بستر BOS از زبان Ontology وب استفاده خواهد کرد. Ontology فهرست صوری‌شده‌ای از اصطلاحات است که تعاریف را با توصیف روابط آن‌ها با سایر اصطلاحات درون Ontology مشخص می‌کند. OWL به عنوان ابزاری برای اپلیکیشن‌ها جهت پردازش اطلاعات (بر خلاف پردازش انسانی) استفاده شده و به سیستم اجازه می‌دهد تا معنای واژگان را تفسیر کند؛ جایی که در آن اطلاعات می‌توانند جملات استاندارد متنی یا کد باشند. مزیت استفاده از OWL توانایی تغذیه از بسیاری از Ontology‌های موجود در مخازن OWL است.

زبان اتوماتای زمان‌دار

زبان اتوماتای زمان‌دار (TAL) یک عامل اعتبارسنج در قراردادهای اعتماد بستر BOS است که این قراردادهای هوشمند را تصمیم‌پذیر می‌کند. TAL از اتوماتای محدود تحت نظریه اتوماتا نشات می‌گیرد و یک مولفه زمان‌دار به عملکرد آن افزوده شده است؛ در نتیجه ابتدا فهم نظریه اتوماتا عاقلانه خواهد بود. خوشبختانه مقالات مختلفی در مورد این وجود دارد و دانشگاه استنفورد تعریف خوبی ارائه می‌دهد:

[ماشین‌های خودکار] فرآیندهای خودکاری هستند که فرآیندهای خاص را تولید می‌کنند. … نظریه اتوماتا (ماشین‌ها) با منطق رایانش با توجه به ماشین‌های ساده یا اتوماتا سر و کار دارد. دانشمندان علم کامپیوتر می‌توانند از طریق اتوماتا بهفمند که ماشین‌ها چگونه توابع را محاسبه و مشکلات را حل می‌کنند، و مهم‌تر از آن، درک کنند که معنی قابل محاسبه تعریف شدن یک تابع یا تصمیم‌پذیر توصیف شدن یک سوال چیست».

همانطور که در بالا ذکر شد، اتوماتای محدود در واقع تعمیم نظریه اتوماتا است. اتوماتای محدود مدل‌سازی منطق داده‌های محدود را به یک ابزار ارجاع داده و درک وضعیت منتج به آن را ممکن می‌کند. یک مثال عملی این مفهوم در زیر ارائه شده است: مدل‌سازی یک درب کشویی اتوماتیک (نمودار درب در سمت چپ، نمودار وضعیت در سمت راست)

معرفی ۴۰ پلتفرم قرارداد هوشمند

نمودار شماتیک درب کشویی از SIPSER، مایکل (۲۰۰۶). مقدمه‌ای بر نظریه کامپیوتر. فناوری Tomson Course. ایالات متحده.

معرفی ۴۰ پلتفرم قرارداد هوشمند

نمودار وضعیت درب کشویی از SIPSER، مایکل (۲۰۰۶). مقدمه‌ای بر نظریه کامپیوتر. فناوری Tomson Course. ایالات متحده.

در این مدل، حلقه‌ها نشان‌دهنده وضعیت‌ها و پیکان‌ها نشان‌دهنده انتقال هستند. چپ‌ترین پیکان نشان‌دهنده وضعیت آغازین است.

وضعیت سیستم (در این مثال، درب کشویی) OPEN یا CLOSED است؛ و برای این درب اتوماتیک بخصوص خروجی‌ها به شکل زیر هستند:

معرفی ۴۰ پلتفرم قرارداد هوشمند

جدول وضعیت‌های درب کشویی

یعنی اگر سیستم از وقایع زیر بگذرد: جلو، عقب، هیچکدام، جلو، عقب، هر دو، هیچکدام، عقب، هیچکدام، وضعیت‌ها به شکل زیر منتقل می‌شوند:

معرفی ۴۰ پلتفرم قرارداد هوشمند

نمونه وضعیت‌های درب کشویی

اتوماتای زمان‌دار ساعت سیستم را به عنوان ورودی به ماشین معرفی می‌کند. یک نمونه برای استفاده از ساعت سیستم در یک لامپ دیده می‌شود که در آن هنگامی که کلید متعاقبا طی یک بازه زمانی محدود فشرده شود، لامپ به جای خاموش شده کم‌نور می‌شود. دیاگرام وضعیت این مفهوم در زیر ارائه شده است:

معرفی ۴۰ پلتفرم قرارداد هوشمند

دیاگرام وضعیت لامپ کم‌نور، فهنگر، آنسگار (FEHNKER, Ansgar ) COMP4151- سخنرانی ۱۱ الف – درستی‌یابی الگوریتمی دانشگاه نیو ساوت ولز (New South Wales)، استرالیا

در دیاگرام لامپ کم‌نور بالا ۳ وضعیت وجود دارد: خاموش، کم‌نور و روشن. انتقال توسط یک دکمه راه‌اندازی می‌شود که در اگر در وضعیت خاموش باشد، یک بار فشردن آن وضعیت لامپ را به کم‌نور تغییر می‌دهد و اگر طی مقدار ۱ سنجش ساعت داخلی سیستم فشرده شود (می‌توانید به لحاظ زمانی آن را یک ثانیه در نظر بگیرید)، وضعیت لامپ به روشن تغییر می‌کند. یک بار فشردن کلید در وضعیت روشن، و یا ۱ ثانیه پس از فشرده شدن قبلی، وضعیت لامپ را به خاموش می‌بود.

OWL + بلاک‌چین TAL

ترکیب و TAL اساس قراردادهای اعتماد است. با قراردادهای هوشمند فعلی که به کد نوشته شده‌اند، اجزای OWL ساختار رشته‌های کد را تفسیر می‌کنند، در حالی که TAL قادر خواهد بود منطق کلی قرارداد هوشمند را مدل‌سازی و تایید کند؛ علاوه بر این، هدف این است که اطلاعات در مورد منبع OWL و TAL در بلاک‌چین ذخیره شوند.

با این کار می‌توانیم اطمینان حاصل کنیم که قراردادهای پیش از درستی‌یابی و اجرای قرارداد‌های اعتماد تصمیم‌پذیر هستند و بدینوسیله از یکپارچگی سیستم اطمینان حاصل می‌شود.

۲۶. تائوچین http://www.idni.org/agoras) Agoras/)

وضعیت: غیر فعال

توضیح: برای درک Agoras، ابتدا لازم است که اصل تائوچین را شرح دهیم. این اکوسیستم بخصوص، کلیت‌بخشی به بسیاری شبکه‌های متمرکز و غیرمتمرکز همتا به همتا از جمله شرکت‌های سرمایه‌گذاری خطرپذیر بلاک‌چین است. این بستر موارد کاربرد بسیاری از توسعه نرم‌افزار گرفته تا بازی و حتی ذخیره‌سازی غیر‌متمرکز دارد. Agoras یک اپلیکیشن است که روی Tau اجرا می‌شود و یک ارز هوشمند با تمرکز بسیار بر قراردادهای همتا به همتا ارائه می‌کند.

Agoras بر قراردادهای هوشمند همتا به همتا تمرکز کرده است. Agoras برای شرکت‌ها‌ راهکاری است که ارزش بررسی دارد. شرکت‌ها تمایل دارند امور خود را خصوصی نگه دارند و قراردادهای هوشمندی که برای این تراکنش‌ها طراحی شده‌اند برای تحقق این هدف کافی هستند. Agoras قصد دارد تا پیش از هر چیز بر قراردادهای هوشمند معنی‌دار تمرکز کند. این یعنی این توافقنامه‌ها همیشه بدون وقوع اتفاق غیرمنتظره برای هر یک از طرفین به تنظیمات و شرایط ازپیش‌تعیین‌شده تمکین خواهند کرد.

۲۷.https://www.burst-coin.org) Burst/)

مزایا:

  • قراردادهای هوشمند تورینگ کامل.

معایب:

  • کارمزد بالای قرارداد هوشمند.

پیاد‌ه‌سازی قرارداد هوشمند: فن‌آوری‌های خودکار (https://ciyam.org/at/) (C / C ++)

وضعیت: فعال

توضیح: Burst اولین رمزارزی بود که قراردادهای هوشمند تورینگ کاملی را در یک محیط زنده به شکل تراکنش‌های خودکار(AT) ارائه کرد که کار می‌کردند. جریان در زیر نمایش داده شده است: از ایجاد یک قرارداد تا تغییر وضعیت نهایی.

معرفی ۴۰ پلتفرم قرارداد هوشمند

چرخه زندگی قرارداد هوشمند ‌Burst

به دلیل برخی مشکلات، Burst نتوانست همگام با سایر بسترها پیش رود. همانطور که یک مصاحبه منتشره به تاریخ ۴ آوریل ۲۰۱۸ آمده است:

مسئله اصلی من با تراکنش‌های خودکار Burst این است که هر کد عملیاتی (خط کد) که توسط ماینر ایجاد می‌شود ۱ burst هزینه دارد. این باعث می‌شود که اجرای یک قرارداد بسیار ساده (مانند ارسال burst از خود قرارداد هوشمند) حدود ۲۰ burst هزینه داشته باشد. اگر این هزینه‌ها به ۰٫۰۰۱ burst به ازای هر کد عملیاتی کاهش یابد، پس از اضافه کردن کامپایلرها و موارد مشابه، به خوبی اتریوم یا هر بستر دیگری خواهد بود.

۲۸. https://iolite.io/) iOlite/)

مزایا:

  • از FAE (موتور سازگاری سریع) استفاده می‌کند که قادر است زبان طبیعی و یا هر زبان برنامه‌نویسی دلخواه دیگری را به کد قرارداد هوشمند تبدیل کرده و بنابراین درهای دنیای قراردادهای هوشمند را برای مخاطبان بیشتری باز کند.

وضعیت: فعال

توضیح: iOlite(https://iolite.io/) محصولی است که یک موتور سهل الاستفاده ارائه می‌دهد که قادر به درک زبان طبیعی‌ یا هر زبان دلخواه دیگری است که به کد قرارداد هوشمند کامپایل می‌شود، و با استفاده از این موتور، بر به‌کارگیری انبوه فن‌آوری قرارداد هوشمند تمرکز کرده است. اگر قصد ندارید زمانی صرف یادگیری کنید، IOlite راهکاری ایده‌آل است و می‌توانید فقط ایجاد قراردادهای هوشمند را آغاز کنید.

معرفی ۴۰ پلتفرم قرارداد هوشمند

مورد کاربرد iOlite

اساس iOlite پژوهشی (https://nlp.stanford.edu/pubs/wang2017naturalizing.pdf) است که در دانشگاه استنفورد انجام شده است. این تیم FAE (موتور سازگاری سریع) را ابداع کرده است که می‌تواند زبان طبیعی و یا هر زبان برنامه‌نویسی دلخواه دیگری را به کد قرارداد هوشمند تبدیل کند. FAE فقط مستقیما ورودی شما را به کد‌ ترجمه نمی‌کند. FAE به مشارکت‌کنندگانی (کارشناسان قرارداد هوشمند) وابسته است که قادر به تعریف ساختارهایی شامل عبارات زبانی هستند. علاوه بر این، این ساختارها به کد قرارداد هوشمندی متصل هستند که خود می‌نویسند. این به موتور اجازه می‌دهد تا برای پیدا کردن عبارت صحیح جهت کامپایل کردن قرارداد هوشمند دلخواه ساختارها را مرور کند. هر زمان که ساختاری استفاده شود، مشارکت‌کننده به عنوان پاداش توکن iOlite دریافت می‌کند.

همانطور که می‌بینید، iOlite برای موفقیت‌آمیز بودن FAE بر جامعه خود متکی است. FAE با اعمال تکنیک‌های یادگیری ماشین جهت یادگیری و به‌کارگیری آسان ساختارهای جدید به آنها کمک می‌کند.

آزمایشگاه iOlite (https://iolite.io/) در حال حاضر روی قراردادهای هوشمند اتریوم با Solidity تمرکز کرده است، چراکه تقاضا زیادی برای آن وجود دارد.

تراویس بایرن (Travis Byrne) (https://www.linkedin.com/in/travis-byrne-b6723015a/) از تیم iOlite توضیح داد که می‌توان از کدام زبان برای ایجاد قراردادهای هوشمند استفاده کرد. «این به این معنی است که نه تنها برنامه‌نویسان (به زبان‌های صوری مانند Python، C، JavaScript و غیره) قادرند بلافاصله از مهارت‌های موجود خود برای نوشتن قراردادهای هوشمند استفاده کنند، بلکه افراد عادی فاقد دانش برنامه‌نویسی نیز می‌توانند به همان آسانی توسعه با زبان‌های طبیعی مانند انگلیسی را آغاز کنند. iOlite در حال محو کردن مرزهای موجود یادگیری فن برای ایجاد قراردادهای هوشمند است.»

۲۹. https://byteball.org) ByteBall/)

زبان قراردادی هوشمند: زبان اعلانی (Declarative )

وضعیت: فعال

توضیح: DAGها عموما دارای ظرفیت و مقیاس پذیری بالا هستند. اما این هزینه‌ای به همراه دارد؛ امکان پشتیبانی از قراردادهای هوشمند به اندازه اتریوم برای DAGهای مانند Byteball وجود ندارد. دلیل آن ساختار درخت‌مانند آن‌ها است.

Image result for DAG blockchain wallpaper

ساختار Byteball DAG

در خصوص اتریوم و سایر بلاک‌چین‌ها، این ساختار خطی است. بنابراین، شما می‌توانید ترتیب تراکنش‌ها را تعریف کنید. اما DAGها اهمیت زیادی به ترتیب نمی‌دهند، فقط معتبر بودن یا نبودن تراکنش برای آن‌ها اهمیت دارد (تداخل داشتن تراکنش). بنابراین، DAGها برای قراردادهایی مناسب هستند که ترتیب رخ دادن آن‌ها (تراکنش‌ها) مهم نیست.

Byteball به دلیل زیر از سایر DAGها متفاوت است. این بستر از اوراکل‌ها برای حل این مشکل استفاده کرده است. کاری که اوراکل‌ها انجام می‌دهند این است تمام تراکنش‌ها پیگری کرده و ترتیب جهانی تمام تراکنش‌های شبکه را حفظ می‌کنند. بنابراین با استفاده از اوراکل‌ها پیاده‌سازی قراردادهای هوشمندی ممکن است که نیازمند ترتیب دقیق رخ دادن تراکنش‌ها هستند.

همچنین، لازم نیست یک توسعه‌دهنده باشند تا این قراردادها را نوشته یا درک کنید، همچنین لازم نیست به یک توسعه‌دهنده نیز اعتماد کنید. دقیقا مانند یک قرارداد حقوقی معمولی همه می‌توانند به راحتی ببینند که معنی قرارداد چیست.

یک قرارداد هوشمند در Byteball به شکل زیر است:

معرفی ۴۰ پلتفرم قرارداد هوشمند

نوشتن یک قرارداد هوشمند Byteball

این ویژگی به طور بالقوه می‌تواند درب قراردادهای هوشمند خود را برای مخاطبان بیشتر، حتی فراتر از آن در سراسر جامعه توسعه‌دهنده و عموم مردم بگشاید.

برای مطالعه بخش بعدی این مقاله اینجا کلیک کنید.

شاید از این مطالب هم خوشتان بیاید.

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.