Oracle چیست ؟
یک قرارداد هوشمند روی بلاکچین را تصور کنید که قرار است اگر دمای تهران از عدد مشخصی بالاتر رفت کاری انجام دهد. یک مشکل وجود دارد: خود بلاکچین از دمای هوای تهران خبر ندارد.
اینجاست که مفهوم Oracle یا اوراکل وارد میشود. اوراکل راهی برای رساندن اطلاعاتی است که خارج از بلاکچین قرار دارد به قراردادها و برنامههای روی زنجیره.
مثلاً یک پروتکل وامدهی ممکن است برای محاسبه ارزش وثیقه به قیمت ETH نیاز داشته باشد. قرارداد هوشمند نمیتواند مثل انسان سایتهای قیمت را باز کند، بنابراین از یک سیستم Oracle یا Data Feed برای دریافت داده استفاده میکند.
اوراکل فقط مخصوص قیمت نیست. اطلاعات مسابقات ورزشی، آبوهوا، نرخ ارز یا دادههای دیگر هم میتوانند در بعضی برنامهها از منابع بیرونی وارد بلاکچین شوند.
نکته مهم این است که اگر یک قرارداد به داده بیرونی وابسته باشد، کیفیت آن داده اهمیت زیادی پیدا میکند. اگر اطلاعات اشتباه یا دستکاریشده وارد قرارداد شود، نتیجه اجرای قرارداد هم میتواند اشتباه باشد. به همین دلیل سیستمهای Oracle تلاش میکنند منابع و روشهای مختلفی برای کاهش این ریسک داشته باشند.
پس Oracle را میتوان پل اطلاعاتی میان بلاکچین و دنیای بیرون دانست. قرارداد هوشمند همچنان طبق کد خودش عمل میکند، اما اوراکل اطلاعاتی را در اختیارش میگذارد که به تنهایی نمیتوانست از خارج شبکه به دست بیاورد.
