<100 subscribers
اوراکلهای دیفای، سرویسهای شخص ثالثی هستند که به قراردادهای هوشمند اجازه میدهند به دادههای دنیای واقعی دسترسی پیدا کنند. این دادهها میتوانند شامل قیمت ارزهای دیجیتال، نرخ بهره، وضعیت آب و هوا، و غیره باشند.
اوراکلهای دیفای برای پروتکلهای دیفای ضروری هستند. این پروتکلها از دادههای اوراکلها برای تصمیمگیریهای مالی استفاده میکنند. به عنوان مثال، یک پروتکل وامدهی از دادههای قیمت ارزهای دیجیتال برای تعیین نرخ بهره وامهای خود استفاده میکند.
یکی از معیارهای طبقه بندی اوراکلهای دیفای میتواند بر اساس منبع دادهها، جهت دادهها، و میزان اعتماد به آنها باشد.
منابع داده ها بر اساس تایید اطلاعات آنها باهم متفاوت هستند، مثلا آب و هوای شهرها و نتایج مسابقات ورزشی به سادگی قابل تایید هستند، پس تایید اطلاعات چنین منابعی اصلا سخت نیست. اما منابع مربوط به قیمت یک دارایی در جاهای مختلف ممکن است متفاوت باشد. مثلا قیمت یک دارایی در یک صرافی یک عدد است و در یک صرافی دیگر عدد متفاوتی میتواند باشد. بخاطر همین تایید چنین منابعی میتواند چالش برانگیز باشد.
جهت داده ها یی که توسط یک اوراکل تامین میشود، در بلاکچین میتواند ورودی و خروجی باشد.
مثلا، اوراکل قیمت یک دارایی را از منابع مختلف تجمیع، تایید و در اختیار یک پروتکل دیفای در بلاکچین قرار میدهد و این میشود جهت ورودی. از طرف دیگر، قیمت یک دارایی در صرافی های غیرمتمرکز برروی بلاکچین های متفاوت میتواند فرق داشته باشد. به همین جهت اوراکل میتواند از قیمت صرافی های غیرمتمرکز برروی بلاکچین هم بعنوان یک منبع داده استفاده کند و اینگونه جهت داده خروجی محسوب میشود.
اوراکلهای دیفای را میتوان بر اساس میزان اعتماد به آنها به دو دسته متمرکز و غیرمتمرکز تقسیم کرد.
اوراکلهای متمرکز: این اوراکلها توسط یک نهاد واحد کنترل میشوند. این اوراکلها معمولاً از امنیت و دقت بالاتری برخوردارند، اما همچنین میتوانند در معرض خطر دستکاری قرار بگیرند.
اوراکلهای غیرمتمرکز: این اوراکلها توسط یک شبکه غیرمتمرکز از مشارکتکنندگان کنترل میشوند. این اوراکلها کمتر در معرض خطر دستکاری قرار میگیرند.
همانطور که قبلا گفته شد، اوراکل ها قراردادهای هوشمندی هستند که داده های دنیای واقعی را برای استفاده در DeFi در دسترس قرار می دهند. برای تشکیل یک مدل ذهنی مناسب از یک اوراکل، بیایید آن را از پایه بسازیم. به عنوان مثال، یک قرارداد هوشمند را در نظر بگیرید که مسئول ارائه قیمت ETH/USD در Binance است. ساده ترین اوراکل ممکن دو متد دارد: set() و get().
متد set() توسط یک ارائه دهنده داده فراخوانی می شود که قیمت ETH/USD Binance را مشاهده و آن را تأیید می کند.
متد get() می تواند برای دریافت قیمت ETH/USD از Binance برای استفاده در یک پروتکل وام دهی استفاده شود.
در ساده ترین حالت، اوراکل ها به یک ارائه دهنده داده واحد متکی هستند که قیمت های دنیای واقعی را به بلاک چین می فرستد (یا اصطلاحا Push میکند). بخاطر همین این مدل اوراکل “ push” نامیده می شود.
Push ;کردن داده ها در بلاک چین صرف نظر از اینکه استفاده می شود یا نه، هدر دادن منابع زیادی است.
معماری منسوخ و یکپارچه مقیاس پذیری را محدود می کند (لیست کردن دارایی های جدید سخت و با تاخیر است).
پروتکل ها نمی توانند به طور کامل در مورد منابع معتبر و شرایط به روز رسانی داده تصمیم بگیرند.
کاربران نهایی به طور کامل به رله ها وابسته هستند و ممکن است دچار خرابی سیستم بشوند.
برای غیرمتمرکز کردن این سیستم، میتوانیم به یک مجموعه بزرگتر از ارائهدهندگان داده اجازه دهیم تا گواهیهای خود را ارائه دهند. این دادههای نقطهای چندگانه میتوانند آفچین جمعآوری شوند (با یک واسطه فرستنده که set() را برای فرستادن یا پوش کردن قیمت جمعآوریشده و امضاهای جمعآوریشده در زنجیره فراخوانی میکند). یا میتوانند آنچین باشند (یعنی در منطقِ متدِ set() ). با این حال، در هر صورت، این مدل پرهزینه است زیرا قیمتها باید بهطور مکرر بهروز شوند (تا از قدیمی شدن و نادرست شدن آنها جلوگیری شود) اما هر بار فراخوانی تابع set() گس مصرف میکند.
برای حل بخشی از این مشکل، برخی از اوراکلها، مانند Pyth، مدل “pull” را برای کاهش هزینههای گس و افزایش تناوب بهروزرسانیها معرفی کردهاند.
در این مدل، دادهها بصورت آفچین در یک سرویس قیمت جمعآوری میشوند و کاربران میتوانند برای دریافت آخرین قیمتها به این سرویس مراجعه کنند. هنگامی که کاربران میخواهند با پروتکلی که به قیمت بهروز نیاز دارد، تعامل برقرار کنند، آنها آخرین قیمتها را از سرویس قیمت گرفته و قبل از فراخوانی با متد oracle get() آنها را به قرارداد هوشمند ارسال میکنند. این روش باعث میشود که قیمتها بهطور مکرر بهروز شوند بدون اینکه به قرارداد هوشمند فشار زیادی وارد شود.
و اما RedStone پیشنهاد طراحی اصلی Oracle را برای پاسخگویی به نیازهای پروتکل های DeFi مدرن ارائه می دهد.
ارائه دهندگان داده نیازی ندارند که داده ها را پیوسته بصورت آنچین منتشر کنند.
به کاربران نهایی اجازه می دهد تا داده های Oracle امضا شده را به صورت خودکار روی زنجیره تحویل دهند.
پروتکل های دیفای میتوانند از شبکه Streamr غیر متمرکز برای تحولی دیتاهای اواکل استفاده کنند.
با استفاده از طرح تشویقی با توکن میتوان بعنوان انگیزه ای استفاده کرد تا ارائه دهندگان داده، با داده های درست و بدون وقفه به ارائه خدمات خود ادامه دهند.
از بلاکچین Arweave بعنوان ذخیره ارزان قیمت و دائمی برای بایگانی داده های اوارکل و حفظ پاسخگویی ارائه دهندگان داده استفاده کرد.
اوراکلهای دقیقتر به پروتکلهای دیفای کمک میکنند تا ریسک را کاهش دهند و اعتماد به معامله را افزایش دهند. متأسفانه، اوراکلهای امروزی معمولاً دقیق نیستند و با تأخیر بهروز میشوند. این به این دلیل است که بهروزرسانی قیمتها در بلاکچین گران است. اگر اوراکلها دقیقتر و سریعتر بهروز شوند، پروتکلهای دیفای میتوانند کارایی سرمایه بیشتری داشته باشند و اعتماد بیشتری در بازار کریپتو ایجاد کنند.
در اینجا یک مثال ساده آورده شده است:
فرض کنید شما میخواهید از یک پروتکل وامدهی استفاده کنید تا ETH قرض بگیرید.
پروتکل وامدهی از یک اوراکل برای دریافت قیمت ETH استفاده میکند.
اگر اوراکل دقیق نباشد، ممکن است پروتکل وامدهی به شما ETH بیشتری از آنچه میتوانید بازپرداخت کنید، قرض دهد.
این میتواند منجر به لیکوئید شدن شود، یعنی پروتکل وامدهی داراییهای شما را برای بازپرداخت وام میگیرد.
اگر اوراکل سریعتر بهروز شود، پروتکل وامدهی میتواند قیمت ETH را دقیقتر ردیابی کند و ریسک لیکوئید شدن را کاهش دهد.
در نهایت با پیشرفت فناوری، اوراکلهای دقیقتر و سریعتر بهروز شوند، دیفای بهطور فزایندهای قابل اعتماد و کارآمد خواهد شد.
0xMasoud.eth