فهرست مطالب
با پذیرش هرچه بیشتر ایدهی اینترنت غیرمتمرکز (Web3.0)، بسترهای بلاکچین روزبهروز بیشتر مورد پذیرش و استقبال مردم، دولتها و شرکتهای بزرگ قرار میگیرند. بلاکچین در حال حاضر در حوزههای مختلف و بزرگی مانند: صنعت، درمان، بازیسازی، گردشگری و … در حال استفاده است. اما بلاکچین برای حیات و ادامهی کار خود به ابزارهای دیگری نیز احتیاج دارند که به اندازه آن حائز اهمیت میباشد.
اوراکل یکی از ابزارهایی است که برای رشد دنیای غیرمتمرکز بلاکچین، اهمیت فراوانی دارد. شاید برای شما هم سوال شده باشد که «اوراکل چیست و چه کاربردی دارد؟» امروز در این مقاله قرار است به صورت جامع به این سوالات پاسخ دهیم.
اوراکل چیست ؟
اگر بخواهیم این سوال را به زبان ساده و خلاصه پاسخ دهیم: «اوراکل در واقع یک پل ارتباطی است بین دنیای بیرونی و فضای بلاکچین، برای انتقال دادهها». اوراکل، اطلاعاتی مانند دمای هوا یا تعداد آرای کاندیداهای سیاسی در انتخابات را از دنیای بیرونی به بلاکچینهایی مثل اتریوم وارد میکند.
قراردادهای هوشمند روی بلاکچین هم از این اطلاعات در حوزههای مختلف مثل دیفای استفاده میکنند. یکی از استفادههای مهم قراردادهای هوشمند از اوراکلها، مربوط به حوزه دیفای میشود که برای تصمیمگیری در مورد مقدار و نحوهی توزیع پول از اطلاعات اوراکلها استفاده میکنند.
برای مثال، تصور کنید با یکی از دوستان خود در یک مسابقه ورزشی، مبلغ 10 دلار بر روی تیم موردعلاقهی خود شرطبندی میکنید و در مجموع مبلغ 20 دلار داخل یک قرارداد هوشمند قفل میکنید. پس از پایان مسابقه، قرارداد هوشمند نیاز دارد تا نتیجهی بازی را از دنیای بیرونی دریافت کرده و کل مبلغ را به فرد برنده پرداخت نماید.
اینجاست که کاربرد اوراکلها نمایان میشود. اوراکل نتایج دقیق برون زنجیرهای (Off-Chain) را به شکلی قابل اعتماد و ایمن به بلاکچین انتقال میدهد. یک اوراکل در واقع به قراردادهای هوشمند بلاکچین کمک میکند تا وظایف خود را به صورت اتوماتیک با دریافت اطلاعات مورد نیاز، انجام دهد.
دستهبندیهای اوراکل چیست ؟
با توجه به دامنهی وسیع اطلاعات برون زنجیرهای، اوراکلها نیز در انواع، اشکال و اندازههای مختلفی وجود دارند. بسته به نوع کاربرد و بلاکچین، قراردادهای هوشمند به انواع مختلفی از اطلاعات بیرونی، محاسبات، مکانیسمها و سطوح مختلف امنیتی نیاز دارند.
بطور کلی هر اوراکل شامل فرآیندهایی از جمله اعتبارسنجی، محاسبه و تحویل دادهها به مقصد میشود. هر نوع از اوراکلها برای یک سری از قراردادهای هوشمند و اپلیکیشنها مورد استفاده قرار میگیرند که در ادامه انواع مختلف اوراکلها را بررسی میکنیم.
اوراکلهای ورودی (Input Oracles)
اوراکلهای ورودی، شناخته شده ترین نوع از اوراکلها هستند که اطلاعات را از دنیای بیرونی استخراج کرده و به سمت بلاکچین، برای تغذیه قراردادهای هوشمند هدایت میکنند. این نوع از اوراکلها معمولا برای حوزه دیفای و بخشهای مختلف آن مورد استفاده قرار میگیرد و دسترسی قراردادهای هوشمند دیفای را به شکل درون زنجیرهای (On-Chain) به دادههای بازارهای مالی برقرار میکنند.
اوراکلهای خروجی (Output Oracles)
اوراکلهای خروجی، نقطهی مقابل نوع اول هستند که به قراردادهای هوشمند اجازه میدهند تا دستوراتی را به سیستمهای برون زنجیرهای ارسال کنند، تا اقداماتی را در جهت پیشبرد اهداف بلاکچین انجام دهند. از جمله این اقدامات میتوان به: اطلاعرسانی به شبکه بانکی برای پرداخت، پیشنهاد به یک ذخیرهساز اطلاعات برای ذخیرهسازی دادهها و ارسال دستور به یک سیستم اینترنت اشیا (IoT) برای بازکردن درب خودرو پس از پرداخت اجاره، اشاره کرد.
اوراکلهای میان زنجیرهای (Cross-Chain Oracles)
نوع دیگری از اوراکلها، اوراکلهای میان زنجیرهای هستند که توانایی خوانش و نوشتن دادهها، بین چند بلاکچین را دارند. اوراکلهای میان زنجیرهای توانایی انتقال داراییها و اطلاعات را بین چند زنجیره فراهم میکنند. برای مثال استفاده از اطلاعات در یک بلاکچین، به منظور ارسال دستور برای انجام یک تراکنش در بلاکچینی متفاوت یا در مثالی دیگر، انتقال داراییها میان چند بلاکچین تا بتوان از این داراییها در جایی خارج از بلاکچین بومی که در آن صادر شدهاند، استفاده کرد.
اوراکلهای متمرکز (Centralized Oracles)
اوراکلهای متمرکز توسط یک نهاد واحد اداره میشوند و تنها ارائهدهنده اطلاعات به قراردادهای هوشمند هستند ولی استفاده از یک منبع برای نگهداری و انتقال اطلاعات میتواند خطرناک باشد. خروجی و نتایج مربوط به قراردادهای هوشمند کاملا وابسته به نهاد کنترلکننده اوراکل است و ممکن است دخالتها و دستکاریهای خرابکارانه، عملکرد قرارداد هوشمند را بطور کلی زیر سوال ببرد.
اوراکلهای غیرمتمرکز (Decentralized Oracles)
در قسمت “اوراکل چیست؟” به صورت کلی به این نوع از اوراکلها نیز پرداختیم. اوراکلهای غیرمتمرکز، قابلیت اطمینان به اطلاعات ارائه شده خود را با استفاده از چندین منبع برای ذخیره اطلاعات، بالاتر میبرند. در استفاده از این نوع اوراکلها، قراردادهای هوشمند برای تعیین اعتبار و صحت دادهها، از چندین اوراکل پرسوجو میکنند تا احتمال دریافت اطلاعات غلط را به کمترین حالت برسانند.
اوراکلهای محاسباتی فعال (Compute-Enabled Oracles)
نوع جدیدی از اوراکلها که بطور گسترده توسط برنامههای کاربردی قراردادهای هوشمند مورد استفاده قرار میگیرند، “اوراکلهای محاسباتی فعال” هستند. این اوراکلها از محاسبات برون زنجیرهای بصورت امن استفاده میکنند تا خدمات غیرمتمرکز ارائه دهند که به دلیل محدودیتهای فنی، قانونی و یا مالی، انجام آنها به شکل درون زنجیرهای غیرعملی است. از فعالیتهای این نوع از اوراکل میتوان به محاسبات اثباتهای دانش صفر (Zero-Knowledge Proof) برای حفظ حریم خصوصی دادهها و یا اجرای یک تابع تصادفی قابل تایید (Verifiable Randomness Function) برای ارائه یک منبع ضد دستکاری و قابل اثبات برای قراردادهای هوشمند، اشاره کرد.
اوراکلهای انسانی (Human Oracles)
گاهی اوقات افراد با دانش تخصصی در یک حوزه خاص میتوانند به عنوان اوراکل فعالیت کنند. آنها میتوانند با تحقیق و تایید اطلاعات و با بررسی منابع مختلف، اطلاعات را به زبان قراردادهای هوشمند ترجمه کنند. به این نوع اوراکلها، اوراکلهای انسانی گفته میشود. از آنجایی که برای تایید هویت اوراکلهای انسانی از رمزنگاری (Cryptography) استفاده میشود، امکان جعل هویت و ارائه دادههای غلط نسبتا پایین است.
برای آشنایی کامل با مفهوم رمزنگاری و سیر تکامل آن، پیشنهاد میکنیم این مطلب را مطالعه کنید.
کاربردهای اوراکل چیست ؟
توسعهدهندگان قراردادهای هوشمند با توجه به طیف وسیع اپهای قابل ساخت بر روی بلاکچین، از اوراکلها برای ساخت اپلیکیشنهای غیرمتمرکز و پیشرفتهتر استفاده میکنند. در حالی که این صنعت روزبهروز در حال رشد است و در حوزههای مختلفی از اوراکلها استفاده میشود، در ادامه با هم چند کاربرد مهم و جدید اوراکلها در میان پروژههای بازار ارزهایدیجیتال را بررسی میکنیم.
اقتصاد غیرمتمرکز یا دیفای (Defi)
بخش بزرگی از اکوسیستم دیفای برای دسترسی به دادههای بازارهای مالی و همینطور داراییها، نیاز به استفاده از اوراکلها دارند. برای مثال در حوزه ییلد فارمینگ، پلتفرمهای فعال در این زمینه، نیاز به اطلاعات لحظهای از حجم پول قفل شده در استخرهای نقدینگی دارند تا بتوانند سودی که به کاربر تعلق میگیرد را محاسبه کنند، درصد سود را به صورت شفاف و لحظهای به کاربر نشان داده و پس از سررسید وام، با قراردادهای هوشمند به صورت اتوماتیک با کاربر تسویه حساب کنند.
بیمه (Insurance)
به تازگی شرکتهای بیمهای هم به سمت غیرمتمرکزسازی و استفاده از بلاکچین رفتهاند و این عوامل باعث استفاده از اوراکلها نیز میشود. قراردادهای هوشمند بیمهای از “اوراکلهای ورودی” برای تایید وقوع رویدادهای بیمهپذیر، بازکردن دسترسی به حسگرهای فیزیکی، Apiهای وب، تصاویر ماهوارهای و اطلاعات قانونی استفاده میکنند.
شرکتها (Enterprises)
اوراکلهای میان زنجیرهای (Cross-Chain) به شرکتها پیشنهاد یک میانافزار امن بلاکچینی میدهند که به آنها اجازهی اتصال سیستمهای Back-end خود به هر شبکه بلاکچین را میدهد. نتیجه این است که موسسات میتوانند سریعا به بلاکچینهای مورد تقاضای طرف مقابل خود بپیوندند و یک پشتیبانی برای خدمات قراردادهای هوشمند ایجاد کنند، بدون اینکه نیاز به صرف زمان و منابع توسعه برای ادغام با هر بلاکچینی باشد.
مشکلات اوراکل چیست ؟
قدرت یک بلاکچین مانند سولانا با توان آن در اجرای قراردادهای هوشمند اندازهگیری میشود. زمانی که قراردادهای هوشمند کدنویسی شوند، توسط بلاکچین کنترل میشوند بدون این که نیاز به اعتماد به واسطه داشته باشند یا شخص سومی بتواند جلوی انجام تراکنشی را بگیرد. اما از طرفی اوراکلها یک منبع داده هستند که بلاکچینها برای اجرای قراردادهای هوشمند خود نیاز دارند تا با آنها در ارتباط باشند.
اوراکل در اینجا مانند یک واسطه عمل میکند و این موضوع باعث میشود که خطراتی، غیرمتمرکز بودن بلاکچین را تهدید کند. برای مثال صاحب یک اوراکل میتواند اطلاعات غلطی را به جای اطلاعات درست برای رسیدن به اهداف خود جایگذاری کند یا در حالتی دیگر یک منبع داده اوراکل میتواند توسط هکرها برای رسیدن به اهداف خود مورد حمله قرار بگیرد.
از آنجایی که قراردادهای هوشمند بصورت اتوماتیک کار میکنند، اگر اطلاعات غلطی از سمت اوراکل به سمت بلاکچین هدایت شود، خروجی قرارداد هوشمند قابل بازگشت نیست و ممکن است ضررهای جبران ناپذیری به کاربران وارد کند، علیالخصوص در حوزههای مختلف دیفای از جمله ییلد فارمینگ. لازم به ذکر است قراردادهای هوشمندی که نیاز به اوراکل یا دادههای دنیای واقعی ندارند با این مشکلات روبرو نمیشوند.
راهحلهای اوراکل چیست ؟
در حال حاضر محققان مشغول به بررسی راههای مختلف برای کاهش خطرات امنیتی و ساخت اوراکلهای غیرمتمرکزتر هستند تا دسترسی افرادی که توانایی دستکاری در اطلاعات را دارند، قطع شود. یکی از حوزههای تحقیقاتی، محیطهای اجرایی مورد اعتماد (Trusted Execution Environments) است که با بخشهای ویژه و با امنیت بالا برای سختافزارها، امکان دستکاری و حمله از سوی هکرها به آنها را سخت میکند.
یکی از راههای دیگر برای مقابله با این مشکلات، استفاده از اوراکلهای غیرمتمرکز است که چین لینک یکی از پروژههای فعال بازار در این حوزه است. چین لینک از چندین گره (Node) مستقل و چندین منبع داده قابل اعتماد برای تمرکززدایی استفاده میکند. در نتیجه احتمال دستکاری و خرابکاری در اطلاعات ارسالی بسیار پایینتر آمده و امنیت قراردادهای هوشمند و اپلیکیشنهای غیرمتمرکز را بالاتر میبرد. هرچند غیرمتمرکزسازی اوراکلها نیز بصورت صد درصدی از حملات هکرها جلوگیری نمیکند.
جمعبندی
غیرمتمرکزسازی خدمات، مدتهاست که مورد توجه شرکتهای بزرگ قرارگرفته و این توجه روزبهروز در حال افزایش است. بلاکچینها یکی از عوامل خیلی مهم برای محقق کردن اهداف غیرمتمرکز است اما آنها نیز به عوامل مهم دیگری برای انجام فعالیتهای خود نیاز دارند که یکی از مهمترین این عوامل، اوراکلها هستند.
تحقیقات و تکنولوژی مربوط به اوراکلها نیز در حال توسعه است و در حال حاضر نیز انواع و اقسام اوراکلها با توجه به نوع فعالیت قراردادهای هوشمند، برای استفاده در دسترس هستند و اخیرا آپدیتهای اوراکلهای غیرمتمرکز و همینطور ابداع اوراکلهای محاسباتی فعال، امنیت و سرعت بلاکچینها را بالاتر بردهاند.
بنظر میرسد اوراکلها تا زمانی که توجهها به سمت غیرمتمرکزسازی و بلاکچینها است، جزو شاخههایی از بازار ارزهای دیجیتال محسوب میشوند که مورد استقبال قرار خواهند گرفت و با تحقیق و بررسی فاندامنتال عمیقتر بر روی پروژههای مختلف فعال در انواع دستههای حوزه اوراکلها، میتوان سرمایه گذاری بلندمدت موفقی بر روی این حوزه با قبول ریسکهای موجود انجام داد.
منبع: chain.link, academy.binance, coindesk