قرارداد هوشمند میتواند دارایی جابهجا کند، وام بدهد و وثیقه را لیکویید کند؛ اما خودش نمیداند بیرون از بلاکچین چه اتفاقی افتاده است.
اوراکل داده بیرون از بلاکچین را به قرارداد هوشمند میرساند. در دیفای، اوراکل قیمت ارزش وثیقه، LTV و زمان لیکوییدیشن را مشخص میکند.
اوراکل بلاکچین چیست؟
Blockchain Oracle سیستمی است که داده دنیای بیرون را دریافت، بررسی و به قرارداد هوشمند منتقل میکند. این داده میتواند قیمت، آبوهوا، نتیجه مسابقه یا وضعیت یک تراکنش در شبکه دیگر باشد.
اوراکل بخشی از خود بلاکچین نیست، اما به برنامههای روی بلاکچین اجازه میدهد بر اساس اطلاعات واقعی تصمیم بگیرند.
چرا قرارداد هوشمند به اوراکل نیاز دارد؟
بلاکچین محیطی بسته و قطعی است. همه نودها باید با داده یکسان به نتیجه یکسان برسند. اتصال مستقیم هر قرارداد به اینترنت میتواند اختلاف و دستکاری ایجاد کند.
اوراکل داده را به شکل استاندارد و قابل بررسی وارد شبکه میکند.
اوراکل قیمت چگونه کار میکند؟
| مرحله | وظیفه |
|---|---|
| جمعآوری | دریافت قیمت از صرافیها و بازارهای مختلف |
| اعتبارسنجی | حذف دادههای مشکوک |
| تجمیع | ساخت قیمت میانه یا میانگین مقاوم |
| انتشار | ارسال قیمت نهایی به قرارداد |
| مصرف | استفاده برای LTV، وام و لیکوییدیشن |
نقش اوراکل در وام رمزارزی چیست؟
پروتکل باید بداند وثیقه کاربر چقدر ارزش دارد. اگر کاربر ETH وثیقه بگذارد، اوراکل قیمت دلاری آن را اعلام میکند.
سپس LTV محاسبه میشود. اگر ارزش وثیقه کاهش پیدا کند، اوراکل قیمت جدید را اعلام میکند و پروتکل ممکن است موقعیت را لیکویید کند.
قیمت وثیقه
ارزش لحظهای دارایی
LTV
نسبت وام به ارزش وثیقه
لیکوییدیشن
فروش اجباری وثیقه
Oracle Problem چیست؟
مشکل اوراکل این است: چگونه مطمئن شویم داده واردشده درست است؟ قرارداد میتواند کد خود را اجرا کند، اما نمیتواند صحت قیمت بیرونی را بهتنهایی ثابت کند.
اگر قیمت یک توکن ۱ دلاری، یک میلیون دلار اعلام شود، قرارداد ممکن است وثیقه کمارزش را بسیار گران محاسبه کند.
انواع اوراکل
اوراکل متمرکز
داده از یک منبع میآید؛ ساده است اما نقطه شکست واحد دارد.
اوراکل غیرمتمرکز
داده از چند منبع و چند نود جمعآوری میشود و معمولاً مقاومتر است.
اوراکل Push
قیمت بهصورت دورهای روی زنجیره منتشر میشود.
اوراکل Pull یا On-Demand
داده هنگام نیاز منتشر میشود و verifier باید آن را دقیق تأیید کند.
حمله دستکاری اوراکل چیست؟
مهاجم تلاش میکند داده قیمتی غیرواقعی وارد پروتکل کند یا منبع قیمت را موقتاً تغییر دهد. این کار ممکن است با فلشلون، بازار کمنقدینگی، نقص verifier یا سرقت کلید انجام شود.
تفاوت انواع حمله
| نوع | روش |
|---|---|
| دستکاری بازار | تغییر قیمت در استخر کمنقدینگی |
| نقص verifier | قبول داده یا امضای نامعتبر |
| سرقت کلید | انتشار داده با کلید معتبر سرقتشده |
| داده قدیمی | استفاده از قیمت stale |
اوراکلهای معروف
- Chainlink: فیدهای قیمت غیرمتمرکز
- Pyth: داده بازار برای کاربردهای مالی
- Supra: مدلهای Push و On-Demand
- RedStone: معماری ماژولار داده
- API3: اتصال APIها به بلاکچین
چطور ریسک اوراکل کم میشود؟
- چند منبع مستقل قیمت
- محاسبه median
- محدودیت تغییر قیمت
- رد کردن داده قدیمی
- بررسی دقیق امضا
- سقف وام برای دارایی کمنقدینگی
- Circuit Breaker و توقف اضطراری
کاربر عادی چه چیزهایی را بررسی کند؟
- پروتکل از چه اوراکلی استفاده میکند؟
- قیمت از چند منبع میآید؟
- پروتکل سابقه هک دارد؟
- دارایی وثیقه چقدر نقدشونده است؟
- LTV چقدر حاشیه امنیت دارد؟
ارتباط این موضوع با یومیکس چیست؟
در یومیکس، ارزش وثیقه، LTV و وضعیت ریسک کاربر به داده قیمت دقیق وابسته است. آموزش اوراکل کمک میکند کاربر بفهمد پشت رابط ساده، چه زیرساختهایی برای امنیت دارایی فعالیت میکنند.
هر قرارداد هوشمند به اندازه دادهاش امن است 🌱
در یومیکس مفاهیم وام رمزارزی، وثیقه و ریسک زیرساخت را ساده یاد بگیرید.
جمعبندی
اوراکل بلاکچین پل بین قرارداد هوشمند و داده دنیای واقعی است. در دیفای، قیمت وثیقه، LTV و لیکوییدیشن به آن وابستهاند.
اگر داده غلط باشد، قرارداد سالم هم تصمیم اشتباه میگیرد. به همین دلیل امنیت اوراکل و verifier بخش اصلی طراحی هر محصول مالی on-chain است.
سوالات متداول
اوراکل بلاکچین چیست؟
زیرساختی که داده بیرونی مثل قیمت را به قرارداد هوشمند منتقل میکند.
اوراکل در دیفای چه کاربردی دارد؟
برای قیمتگذاری وثیقه، LTV، وامدهی و لیکوییدیشن.
حمله دستکاری اوراکل چیست؟
ورود داده جعلی برای وادار کردن قرارداد به تصمیم اشتباه.
آیا اوراکل غیرمتمرکز بدون ریسک است؟
خیر؛ فقط ریسک را کاهش میدهد.
منابع:
Ethereum.org — Oracles
Chainlink Data Feeds
تعریف دقیق اوراکل بلاکچین (Blockchain Oracle)
اوراکل بلاکچین (Blockchain Oracle) یک واسطه نرمافزاری یا سختافزاری است که دادههای دنیای واقعی و خارج از زنجیره (Off-chain) را جمعآوری، تایید و به قراردادهای هوشمند درون بلاکچین (On-chain) منتقل میکند تا این قراردادها بتوانند بر اساس اطلاعات واقعی اجرا شوند.
بلاکچینها به دلیل ساختار امنیتی و ایزوله خود، توانایی ارتباط مستقیم با اینترنت یا پایگاههای داده خارجی را ندارند. اوراکلها به عنوان یک پل ارتباطی دوطرفه عمل میکنند؛ آنها نه تنها دادههای بیرونی مانند قیمت لحظهای ارزهای دیجیتال، شرایط آبوهوایی یا نتایج مسابقات ورزشی را به درون بلاکچین میآورند، بلکه میتوانند دستورات صادر شده از قراردادهای هوشمند را نیز به سیستمهای خارج از شبکه ارسال کنند.
مطالعه موردی: پیامد دستکاری اوراکل در دنیای واقعی
یکی از نمونههای برجسته آسیبپذیری در دنیای دیفای، حمله به پروتکل وامدهی منگو مارکتس (Mango Markets) در شبکه سولانا بود. در این حادثه، مهاجم با استفاده از سرمایه کلان و روش وامهای سریع (Flash Loans)، قیمت توکن بومی این پلتفرم را در صرافیهای غیرمتمرکز کمعمق به طور مصنوعی و موقت به شدت بالا برد.
از آنجا که اوراکل مورد استفاده این پروتکل قیمت را تنها از همین بازارهای کمعمق استعلام میکرد، قیمت دستکاریشده را به عنوان ارزش واقعی وثیقه پذیرفت. مهاجم سپس با اتکا به این وثیقه ارزشگذاریشدهی دروغین، میلیونها دلار دارایی دیگر را از پلتفرم وام گرفت و عملاً پروتکل را خالی کرد. این حادثه نشان داد که استفاده از اوراکلهای غیرمتمرکز چندمنبعه که میانگین قیمت چندین بازار بزرگ را محاسبه میکنند، برای امنیت پلتفرمهای مالی حیاتی است.
مراحل کارکرد اوراکل: دادهها چگونه به بلاکچین میرسند؟
- ثبت و ارسال درخواست توسط قرارداد هوشمند: در گام نخست، قرارداد هوشمندی که روی بلاکچین قرار دارد، برای اجرای کدهای خود به یک داده خارجی (مثلاً قیمت لحظهای یک دارایی) نیاز پیدا میکند و درخواست خود را به صورت یک تراکنش روی شبکه ثبت میکند.
- دریافت و پردازش درخواست توسط نودهای اوراکل: نودهای شبکه اوراکل که همواره بلاکچین را برای یافتن این دسته از درخواستها رصد میکنند، پیام قرارداد هوشمند را شناسایی کرده و ماموریت یافتن داده مورد نظر را آغاز میکنند.
- جمعآوری و اعتبارسنجی دادهها از منابع خارجی: نودهای اوراکل به سراغ منابع اطلاعاتی مختلف در دنیای واقعی (مانند API وبسایتها یا سنسورهای سختافزاری) میروند، دادهها را جمعآوری کرده و با مقایسه آنها با یکدیگر، از صحت و عدم دستکاری اطلاعات مطمئن میشوند.
- ارسال داده تایید شده به بلاکچین همراه با امضای دیجیتال: در مرحله آخر، اوراکل داده نهایی و تایید شده را به همراه یک امضای دیجیتال معتبر (برای اثبات اصالت فرستنده) در قالب یک تراکنش به بلاکچین ارسال میکند تا قرارداد هوشمند با خیال راحت از آن استفاده کند.
اوراکل به زبان خیلی ساده؛ تشبیه اوراکل به دنیای واقعی
برای اینکه مفهوم اوراکل را خیلی ساده درک کنیم، بیایید بلاکچین را مانند یک اتاق کاملاً بسته، تاریک و بدون پنجره تصور کنیم. افرادی که داخل این اتاق هستند (قراردادهای هوشمند)، کارهای خود را با دقت و امنیت بینظیری انجام میدهند، اما هیچ راهی به بیرون ندارند و نمیدانند در این لحظه بیرون از اتاق باران میبارد یا آفتاب است، یا اینکه قیمت یک کیلو سیب در بازار چقدر است.
در این میان، اوراکل بلاکچین به زبان ساده مانند یک «پیک موتوری امین و مطمئن» یا یک «سرویس هواشناسی» عمل میکند. این پیک موتوری وظیفه دارد به بیرون از اتاق برود، اطلاعات واقعی و دقیق (مثلاً دمای هوا یا قیمت لحظهای داراییها) را بپرسد، آن را روی یک کاغذ بنویسد، از درگاه مخصوص وارد اتاق کند و به دست افراد داخل اتاق برساند.
بدون وجود اوراکل، بلاکچین دقیقاً مانند یک کامپیوتر پیشرفته اما بدون اتصال به اینترنت است؛ این کامپیوتر برنامههای داخلی خود را عالی اجرا میکند، اما چون به جهان بیرون وصل نیست، نمیتواند کارهای روزمره و کاربردی مثل نمایش آبوهوا، پیگیری نتایج مسابقات ورزشی یا ثبت قیمتهای لحظهای بازار را انجام دهد. اوراکل در واقع همان کابل اینترنتی است که این کامپیوتر منزوی را به دنیای واقعی متصل میکند.



