مشکل اوراکل در قراردادهای هوشمند

قرارداد هوشمند

سال‌هاست که واژه‌ی بلاک چین لغت روز شده و به اصطلاح دانستن آن مد بوده! اما این روزها می‌بینیم که این وضعیت تغییر کرده و بلاک چین جای خودش را به قرارداد هوشمند داده.

درست است که پیروی از جمع برای بقای آدمیزاد مفید بوده ‌است و یک ویژگی انتخاب‌شده توسط طبیعت به شمار می‌رود؛ اما در دنیای امروزی مغز ما هر روزه توسط اطلاعات محیط بمباران می‌شود و تشخیص درست و نادرست و پیروی از جمع و یا حرکت در خلاف آن فرق بین بقا و محکومیت به مرگ/فراموشی است. اگر بخواهیم بقا داشته باشیم باید بررسی و تحقیق کنیم و راه درست را انتخاب کنیم. قراردادهای هوشمند، بلاک چین، بیت کوین و به طور کلی تمامی مفاهیم جدیدی که با آن آشنا می‌شویم، جوانب مختلفی دارد. بررسی این جوانب بر عهده‌ی ماست.

در این مقاله به بررسی قراردادهوشمند و فواید و معایب آن می‌پردازیم.

اما قبل از اینکه به مشکلات اشاره کنیم بیایید ببینیم “قرارداد هوشمند ذاتا چیست؟”

قرارداد هوشمند

قرارداد هوشمند در واقع یک برنامه‌ی کامپیوتری‌ست که از یک سری کد تشکیل شده‌است و این کدها مشخص‌کننده‌ی اعمال خاصی هستند. برای مثال شما می‌خواهید یک خانه کرایه کنید. در حالت عادی به یک معتمد (یعنی بنگاه) مراجعه می‌کنید و با پرداخت هزینه و زمان قراردادی تنظیم می‌کنید که در این قرارداد شرایطی ذکر شده که با رسیدن موعد مقرر باید عملی و اجرا شود. یعنی اگر در قرارداد ذکر شود شما در تاریخ 5ام هر ماه باید کرایه خانه را پرداخت کنید، شما هر ماه در همین زمان این عمل را انجام می‌دهید.

اما در دنیای غیرمتمرکزی که وارد آن شده‌ایم، هدف حذف مراکز و واسطه‌هاست که در مثال ما بنگاه است.

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

چرا قراردادها را هوشمند کنیم؟

در حالت معمول ما برای تنظیم قراردادها به وکلا، سازمان‌ها و دولت‌ها اعتماد می‌کنیم و هزینه‌ی این اعتماد را نیز پرداخت می‌کنیم. اما تصور کنید قراردادها هوشمند شوند. در این صورت یک سری کد بر اساس {“اگر” شرایطی مقرر شود“پس” نتیجه‌ی X حاصل می‌شود} را تعریف می‌کنیم که به صورت اتوماتیک اجرا می‌گردد. در مثال ما دیگر نیازی به مراجعه به بنگاه نیست. شما تنها با استفاده از کامیپوتر خودتان می‌توانید مستقیما با شخص دیگری در ارتباط باشید. مقداری پول دیجیتالی (مثل بیت کوین) در بلاک چین گرو می‌گذارید و این مبلغ بلوکه می‌شود و با مقرر شدن زمان تعریف شده (یعنی مثلا 5ام هر ماه) این مبلغ برای صاحب خانه‌ی شما آزاد می‌شود. علاوه بر صرفه‌جویی در زمان و هزینه‌، نیازی به اعتماد هم نیست چرا که هر نود در این شبکه‌ی غیرمتمرکز شاهد این قراردادست و به همین دلیل تخطی از آن تقریبا غیرممکن است. هم‌چنین همه‌ی این افراد از اقصی نقاط جهان یک بک‌آپ از قرارداد شما را دارند پس نگرانی برای  گم‌شدن و یا نابودی آن نیست. از طرفی علاوه بر سرعت انجام این اعمال توسط کامپیوترها و کدها، خطای انسانی دخیل نیست و از دقت آن می‌توانیم اطمینان حاصل کنیم.

پس با این همه مزایا بریم همه‌ی قراردادها رو هوشمند کنیم؛ موافقید؟

همانطوری که حدس میزنید خیر. این سکه روی دیگری هم دارد.

ارور کامپیوتر

قراردادهای بی هوش!

وقتی کلمه‌ی هوشمند را می‌شنویم انتظار داریم که این سیستم تصمیمات دقیق و درستی بگیرد. اما اینطور نیست.

قراردادهای هوشمند اصلا هم باهوش نیستند؛ چرا که اولا برای تصمیم‌گیری به اشخاص ثالث نیازمندند و دوما تمامی جوانب را نمی‌توانند در نظر بگیرند و تصمیمات آن‌ها رباتیک و از پیش تعیین‌شده است. در قراردادهای هوشمند ما تنها با نتایج موافقت می‌کنیم. انتظار ما از سیستمی هوشمند بررسی تمامی جنبه‌های یک شرایط و صدور یک نتیجه (رای) بر اساس آن است؛ درست مانند یک قاضی عادل.

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

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

اوراکل وارد می‌شود

به طور خلاصه و در یک کلام اوراکل یعنی اطلاعات و داده. زمانی که از واسطه‌ها در بلاک چین و قراردادهای هوشمند صحبت می‌کنیم منظور ما اشخاص حقیقی نیستند؛ بلکه اطلاعاتی هستند که وارد سیستم می‌شوند. اطلاعات اوراکل (یا اوراکل فیدها) داده‌هایی از سیستم‌های خارجی هستند که اطلاعات حیاتی و مورد نیاز را به داخل بلاک چین هدایت می‌کنند تا قراردادهای هوشمند برای انجام عملی خاص تحت شرایطی از آن استفاده کنند. به همین دلیل این اطلاعات باید دقیق و بدون نقص باشد. با گسترش استفاده از قراردادهای هوشند دقت اوراکل‌ها نیز مساله‌ی مهم‌تری می‌شود. درواقع اوراکل‌ها پلی بین دنیای دیجیتالی و دنیای واقعی هستند. سیستم برای اعمال شرایط نیازمندست از دنیای واقعی “آگاه” باشد. این آگاهی را اوراکل‌ها در اختیار آن قرار می‌دهند.

اوراکل‌ها اطلاعات و داده‌ها را از API های وب‌، اطلاعات داده‌های بازار و … دریافت می‌کنند و در اختیار بلاک چین می‌گذارند. این اطلاعات می‌تواند شامل قیمت ارز و یا محصول خاصی، اطلاعات آب‌وهوایی و یا هر گونه داده‌ای را در بربگیرد. این اطلاعات آشکارا از یک سازمان و یا مراکز خاص در اختیار بلاک چین قرار می‌گیرد و چون تصمیمات قرارداد هوشمند بر اساس اطلاعات ورودی اوراکل‌ها خواهد بود، این موضوع از اهمیت ویژه‌ای برخوردار است. چه طور می‌شود به این اطلاعات ورودی اطمینان کرد؟

oracle

مشکل اوراکل

مشکلی که بیان شد، یعنی وابستگی قراردادهای هوشمند به اوراکل‌ها، به مشکل اوراکل معروف است. اوراکل‌ها قدرت و تسلط زیادی بر نحوه عملکرد قراردادهای هوشمند دارند. چرا که تامین‌کننده‌ی داده‌ها هستند. در حال حاضر پلتفرم‌هایی مانند Delphi، Oraclize و  Chain Link هستند که مشکل اوراکل را دنبال می‌کنند و در پی یافتن راه‌حلی برای آن هستند. راه‌حل فعلی ایجاد اوراکل‌های غیرمتمرکز است که بر اساس اوراکل‌های توافق-پایه و بازارهای غیرمتمرکز کار می‌کنند و روش‌های جدیدی برای صحت‌سنجی ارائه می‌دهند. امیدواریم به زودی گسترش یابند و بتوانیم این پلتفرم‌ها را در روزمره استفاده کنیم.

و اما در آ‌خر،

آیا میدانستید؟

شاید براتون جالب باشه که بدونین علی رغم تصور همگانی، اتریوم اولین پلتفرمی نیست که قراردادهای هوشمند (سالیدیتی) را در بستر خود دارد. بیت کوین از همان ابتدا، در سال 2009، توانایی اجرای قراردادهای هوشمند را داشته و دارد. زبان قرارداد هوشمند بیت کوین Script نام دارد.

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

 

 

برای نگارش این مقاله از منابع زیر استفاده شده‌است:

Jimmy Song ، Blockonomi

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*