اوراکل (Oracles) خدمات شخص ثالثی هستند که امکان دریافت دادههای خارج از اکوسیستم را برای قراردادهای هوشمند درون بلاکچینها فراهم میکنند. اوراکلها همانند یک پایگاه داده و به عنوان ورودی یک قرارداد هوشمند محسوب میشوند که امکان دسترسی به دادههای لحظهای که بر روی بلاکچین موجود نیست یا درواقع قیمت لحظهای داراییها را فراهم میکنند. البته اوراکلها فی نفسه یک پایگاه داده نیستند، بلکه لایههایی هستند که دادههای درون زنجیرهای مرتبط با وقایع دنیای واقعی را تایید کرده و سپس مجموع دادهها را به قراردادهای هوشمند ارسال میکنند.
درحال حاضر شرکتهایی که در حوزه امور مالی غیرمتمرکز (DeFi) فعالیت دارند از اوراکلها برای دسترسی به دادههای درون زنجیرهای لحظهای استفاده میکنند. در واقع هفت مورد از 10 اپلیکیشن برتر در حوزه دیفای از اوراکلهای متمرکز یا نیمه متمرکز برای دسترسی به دادههای خارجی مهم استفاده میکنند، زیرا اوراکلهای غیرمتمرکز سرعت و امنیت لازم را ندارند. از آنجا که بلاکچینها قابلیت ذخیره دادههای درون زنجیرهای در اکوسیستم خود را ندارند، وجود اوراکلها بسیار حائز اهمیت است. تامین این دادهها معمولا از طریق صرافیهای بزرگ مثل بایننس و کوینبیس صورت میگیرد. این صرافیها دارای رابطهای برنامهنویسی اپلیکیشن هستند که امکان اجرای دستورات Query را فراهم میسازند.
انواع اوراکلها کدامند؟
اوراکلها را بر حسب منبع اطلاعات، مسیر اطلاعات و میزان اعتماد طبقهبندی میکنند. منبع داده میتواند سخت افزار یا نرم افزار باشد. اوراکلهای سخت افزاری دادهها را مستقیماً از اشیا فیزیکی جمعآوری کرده و آنها را به مقادیر دیجیتال که میتوانند ورودی قراردادهای هوشمند باشند تبدیل میکنند. از جمله این اوراکلها میتوان به بارکدخوانها و حسگرهایی اشاره کرد که به صورت ارادی یا غیرارادی دادهها را جمعآوری کرده و به قرارداد هوشمند منتقل میکنند. اوراکلهای نرمافزاری، دادهها را از منابع آنلاین با جستجو در وبسایتها جمعآوری کرده و در نهایت به روزترین اطلاعات را در اختیار قراردادهای هوشمند میگذارند. در رابطه با بلاکچینها، این اطلاعات معمولاً از صرافیهای رمزارز دریافت میشود.
مسیر اطلاعات به صورت ورودی یا خروجی است. اوراکلهای ورودی، این امکان را به شبکه میدهند تا اطلاعات از پایگاههای داده خروجی به قرارداد هوشمند ارسال شود. در مقابل اوراکلهای خروجی به قراردادهای هوشمند اجازه ارسال اطلاعات به پایگاههای خارجی را میدهند.
عملکرد اوراکلهای متمرکز همانند یک عنصر واحد است که تحت یکسری ویژگیهای امنیتی، دادهها را از طریق یک منبع خارجی برای قرارداد هوشمند فراهم میکند. با این حال، همانند سیستمهای مالی سنتی که تنها یک نقطه شکست وجود دارد، در این فرآیند نیز به دلیل وجود تنها یک گره (Node)، امنیت و آسیبپذیری آن در برابر حملات دادههای مخرب ورودی به قرارداد هوشمند بسیار زیاد است. از سوی دیگر، اوراکلهای غیرمتمرکز به منظور افزایش اعتبار دادههای فراهم شده برای قرارداد هوشمند از چندین منبع اطلاعاتی استفاده میکنند. اوراکلهای غیرمتمرکز بر روی نقاط شلینگ (Schelling points) یا نقاط کانونی نظریه بازی (Game Theory) کار میکنند که در آن تمام مشارکتکنندگان دادهها را بدون هماهنگی با یکدیگر فراهم کرده و بازی شلینگ پس از رفع خطاها، اعتبار و صحت نقطه داده اجماع (Consensus data point) یا تغییرات پیشنهادی در نرم افزار را تعیین میکند.
استفاده از اوراکلها در دیفای چه ریسکهایی را به همراه دارد؟
از جمله مهمترین ریسکهای مرتبط با استفاده از اوراکلها در یک بلاکچین میتوان به مشکل و تاخیر اوراکل اشاره کرد. مشکل اوراکل ناشی از عدم اعتمادی است که سیستمهای شخص ثالث متمرکز در قراردادهای هوشمند و سیستمهای بلاکچین متمرکز ایجاد میکنند. از آنجا که اوراکلها مستقیماً دادهها را به قراردادهای هوشمند منتقل کرده و عملکرد آنها مبتنی بر این دادههاست، بنابراین اوراکلها از قدرت با نفوذی در اجرای قراردادهای هوشمند بهرهمند هستند. به دلیل اهمیت و حساسیت بالای این موضوع، انتخاب اوراکلهایی با دادههای معتبر و با حداقل میزان تاخیر برای اپلیکیشنها و پروتکلهای دیفای بسیار ضروری است.
به طورکلی، راهحلهای اوراکلها را میتوان به دو دسته طبقهبندی کرد: دسته اول اوراکلهای سریع اما با امنیت پایین هستند و دسته دوم اوراکلهایی که ایمن بوده اما سرعت پایینی دارند. اوراکلهای غیرمتمرکز عمدتاً از نوع اوراکلهای دسته اول هستند که نرخ تاخیر (Latency rate) پایینی دارند. با توجه به آسیبپذیری بالای این نوع اوراکلها در برابر حملات مختلف نظریه بازی، اکثر اپلیکیشنهای دیفای از اوراکلهای متمرکز یا نیمهمتمرکز استفاده میکنند. اکثر اوراکلهای غیرمتمرکز از مکانیزم شلینگ کوین (ShellingCoin) استفاده میکنند. در این مکانیزم منابع مستقل بدون هیچگونه هماهنگی با سایر منابع دادهها را گزارش میکنند. به دلیل عدم ارتباط، این منابع اقدام به گزارش دادههای واقعی در بالاترین سطح توان خود کرده و انتظار میرود که سایر منابع نیز همین کار را انجام دهند. این مکانیزم در برابر مشکلات مختلفی چون تبانی میان طرفین، سیگنالدهی و حتی رشوه آسیب پذیر است. و درصورت حمله هکرها به دادههای ورودی، که تحت عنوان حمله شخص واسط شناخته میشود، هیچگونه مکانیزمی برای اقدام متقابل وجود ندارد. حتی کوچکترین مقادیر نادرست در میان دادهها میتواند عواقب چشمگیری را برای اپلیکیشنها در پی داشته باشد. از سوی دیگر، اوراکلهای متمرکز در زمره اوراکلهای دسته دوم که امنیت بالا اما سرعت پایینی دارند قرار میگیرند. این اوراکلها در مقایسه با اوراکلهای غیرمتمرکز، در برابر عناصر نظریه بازی قدرت و دوام بیشتری دارند. این اوراکلها از سیستم رایگیری دستی و بازبینی اختلاف به منظور دفع حملاتی که با هدف دستکاری دادهها انجام میشود استفاده میکنند. اما از آنجا که این روشها زمانبر هستند و گاهاً هفتهها به طول میانجامند، اپلیکیشینهای دیفای غالباً تمایلی به استفاده از آنها ندارند. با وجود امنیت بالای این اوراکلها در برابر حملات نظریه بازی، اما با این حال به دلیل وجود تنها یک نقطه شکست در این اوراکلها، خطر هک شدن آنها برای طرف مقابل بالاست و از این طریق امنیت اپلیکیشنهای دیفای کاهش مییابد.
منبع: Cointelegraph