اوراکل ها قابلیت اتصال قرارداد هوشمند با سایر سیستمهای خارج از بلاکچین را فراهم میکنند. آنها به عنوان پلی بین بلاکچین و دنیای خارج عمل می کنند.
مقیاس پذیری (Scalability) و قابلیت همکاری (Interoperability) اغلب دو موضوع بسیار مهم در فضای رمزنگاری، در نظر گرفته می شوند. به معنای توانایی سیستمهای کامپیوتری یا نرم افزارها برای تبادل و استفاده از اطلاعات است یعنی در واقع تبادل اطلاعات بین کامپیوترهای مختلف در شبکه را Interoperability میگویند. اوراکل ابزاری قدرتمند هستش که می تواند قابلیت همکاری بین بلاکچین های مختلف را فراهم کند و با منابع داده خارجی ارتباط برقرار کند.
چرا قابلیت همکاری مهم است؟
- در حال حاضر، دنیای غیر متمرکز، دارای بخشهای متمرکز هستش. برای مثال میشه به صرافیهای متمرکز ارز دیجیتال اشاره کرد. این موضوع خطراتی برای اکوسیستم غیر متمرکز به دنبال داره که میشه به طور مثال به هک شدن همین صرافیها اشاره کرد.
- برای موفقیت بلاکچین و سیستمهای غیر متمرکز مبتنی بر اون، بلاکچین باید قادر به تعامل با سیستم های قدیمی مانند موسسات مالی و غیره باشد. ساخت یک نقطه اتصال قوی بین این دو تا سیستم ضروری است.
- در ابتدا ، جامعهی بلاکچین فکر می کرد که اکوسیستم قراردادهای هوشمند توسط یک زنجیره غالب که میزبان قراردادهای هوشمند است پیاده سازی میشود. با این حال پس از گذشت چند سال، میبینیم که چندین سیستم عامل قرارداد هوشمند به وجود آمده است. برای دستیابی به حداکثر عملکرد ، برای این سیستمهای مختلف بسیار مهم است که بدانند چگونه “با یکدیگر” صحبت کنند و ارتباط بگیرند.
طبقهبندی اوراکل ها
دو نوع قابلیت همکاری وجود دارد که پروژه های بلاکچین می توانند از آنها استفاده کنند:
- بین زنجیرهای (On-Chain)
- خارج زنجیرهای (Off-Chain)
اوراکل ها بین زنجیرهای (On-Chain)
این روش به عنوان پل ارتباطی بین دو بلاکچین مختلف استفاده می کند. پروژه هایی مانند AION ، Wanchain و ICON از این روش استفاده می کنند. سه مورد زیر متداول ترین رویکردها برای همکاری بین زنجیره ای است:
- Hub and Spoke: توسط AION محبوب شده است ، در این روش ، بلاکچین اوراکل به عنوان یک هاب مرکزی عمل می کند که سایر بلاکچینها به اون وصل میشن و با هم ارتباط میگیرن.
- Decentralized Exchange:<با ایجاد یک مبادله غیرمتمرکز می توان همکاری بین دو پروژه جداگانه را ایجاد کرد./li>
- Bridges:<در این روش ، زنجیره بلوک به عنوان یک پل عمومی و همه کاره برای کمک به ارتباطات و پیام رسانی عمل می کند./li>
اوراکل ها خارج زنجیرهای (Off-Chain)
ازین روش برای اتصال سیستمهای خارج از بلاکچین استفاده میگردد:
- مبادله اتمی (Atomic Swap): مبادله اتمی روشی غیرمتمرکز است که برای مبادله دو دارایی بدون نیاز به انجام مبادله متمرکز مورد استفاده قرار می گیرد.
- کانالهای حالت: پیاده سازی لایه 2 مانند کانالهای حالت می تواند امکان تعامل خارج از زنجیره و مبادله اتمی را فراهم کند.
- Operation System: یک سیستم عامل بلاکچین با اجرای در بالای بلاک چین های مشارکت کننده ، پیام رسانی متقابل زنجیره ای و مبادله اتمی را امکان پذیر می کند.
- اوراکلها: اوراکلها همچنین می تواند ارتباط گسترده ای بین بلاکچینها و سیستم های سازمانی را ایجاد کند.
و همچنین ما میتوانیم اوراکلها رو به ۲ دستهی سختافزاری و نرمافزاری نیز تقیسم کنیم:
- اوراکلهای سخت افزاری: توسط دستگاههای اینترنت اشیا (IoT) دیتاها رو از دنیای واقعی جمعآوری و به درون بلاکچین وارد میکند.
- اوراکلهای نرمافزاری: دیتاها رو از API های موجود و اطلاعات سایر سیستمها و حتی سایر قراردادهای هوشمند جمع آوری میکند. این اطلاعات میتواند شامل، دیتاهای سهام یا حتی رویدادهای ورزشی باشد.
چرا به اوراکلها نیاز داریم؟
قراردادهای هوشمند برای اجرای عملیات برگشت ناپذیر طراحی شده اند. به همین دلیل اطلاعات وارد شده در قرارداد باید از یک منبع نسبتاً معتمد تهیه شود. به همین دلیل است که ، وقتی داده ها از یک منبع خارجی می آیند ، ممکن است کمی مشکل آفرین باشد.
یک اوراکل، اطلاعات را از API های معتبر گرفته و در بلاکچین قرار میدهد و قرار داد هوشمند بر اساس اون اطلاعات اجرا میشود. این موضوع رو با یک مثال باز میکنیم.
فرض کنید ۲ نفر میخوان سر قهرمانی تیم A و B در لیگ برتر ایران شرط بندی کنند. این دو نفر پس از توافق درباره پرداختها ، با قفل وجوه خود در یک قرارداد هوشمند ، قرارداد را امضا می کنند. قرارداد هوشمند پول را بر اساس نتایج برنده آزاد می کند. حالا قرارداد دقیقاً از کجا می داند که برنده مسابقه چه کسی بوده است؟ این بستگی به اوراکلی داره که اطلاعات مربوطه را به آن تزریق میکند. اوراکل از یک API معتبر مثل سایت ورزش ۳ اطلاعات را برداشت می کند تا بفهمد کدام تیم قهرمان شده است این اطلاعات را به قرارداد هوشمند منتقل می کند. سپس قرارداد ، بسته به نتیجه ، وجوه را برای یکی از این دو نفر ارسال میکند.
بدون اینکه اوراکل وظیفه خود را انجام دهد ، قرارداد هوشمند راهی نخواهد داشت که بفهمد برنده مسابقه چه کسی بوده است.
چگونه اوراکلها دادهی مورد اعتماد را جمعآوری میکنند؟
چهار روش وجود دارد که اوراکلها می توانند برای حفظ قابلیت اطمینان خود استفاده کنند:
- چندین منبع داده
- چند اوراکل
- مکانیسم های تشویقی
- محیط اجرای معتمد (TEE)
چندین منبع داده
اگر اوراکل شما در حال جمع آوری اطلاعات از چندین منبع داده است ، احتمال دریافت اطلاعات اشتباه آن کم است. با این حال ، اوراکل می تواند به عنوان نقطه شکست عمل کند و تمامی دادههای جمع آوری شده اشتباه باشد.
چند اوراکل
رویکرد دیگر استفاده از چندین اوراکل برای جمع آوری اطلاعات است که مسئله “یک نقطه شکست” را نفی می کند. با این حال ، خطر در اینجا این است که این احتمال وجود دارد که اکثر این اوراکلها منابع اطلاعاتی مشابه داشته باشند.
مکانیسم تشویقی
اوراکلها می تواند با استفاده از مکانسیمهای تشویقی و دادن توکنها افراد موجود در شبکه را تشویق به عملکرد درست بکنند. اگر آنها عملکرد خوبی داشته باشند ، پاداش دریافت می کنند ، در غیر این صورت، می توان آنها را از طریق مکانیزمی که اصطلاحا قیچی میگویند، مجازات کرد.
محیط اجرای معتمد (TEE)
TEE اجازه می دهد تا یک برنامه کاربردی در یک محیط بسته و ایزوله به نام “enclave” اجرا شود که از آن محافظت سخت افزاری می کند. این روش:
از یکپارچگی پروژه اطمینان حاصل می کند.
عملیات را محرمانه نگه می دارد.
به برنامه اجازه می دهد تا حافظه را در خارج از محوطه بسته بخواند و بنویسد. به عبارت دیگر، می تواند صداقت و درستی خود را ثابت کند بدون اینکه دقیقاً کاری را که آنها انجام می دهند به هم ریخته شود.
برخی از اوراکلهای معروف:
- ChainLink
- Augur
- Band
- RIF Gateways
- AION
- Aeternity
- DIA
در ادامه مقالات در زمینه اوراکل ها، به توضیح هر یک از این موارد خواهیم پرداخت.
ارسال نظر