اوراکل (Oracle) چیست؟

اوراکل (Oracle) چیست؟

اوراکل (Oracle) چیست؟ در طی چند سال اخیر، مفهومی با نام «اوراکل» به بازار کریپتوکارنسی ها وارد شده است. در واقع، اوراکل ها، داده های خارجی را برای شبکه بلاکچین ( مقاله : بلاکچین چیست؟ را مطالعه نمایید) و قراردادهای هوشمند فراهم کرده و به نوعی رابط بین دنیای بیرون و دنیای بلاکچین می باشند. همانطور که می دانید، شبکه بلاکچین  و قراردادهای هوشمند، سیستم های بسته ای هستند که فرآیندهای سفت و سختی برای اتصال آن ها به منابع داده خارجی وجود دارد. به همین دلیل، متخصصین این حوزه، اوراکل ها (Oracles)  را با هدف ارائه امن داده های خارج از زنجیره به محیط درون زنجیره ای شبکه بلاکچین راه اندازی کرده اند.

با توجه به نقش مهم اوراکل ها در حوزه بلاکچین در این مقاله قصد داریم تا شما را با انواع مختلف اوراکل  و چالش های پیش روی آن ها آشنا کنیم. اگر شما هم به این موضوع علاقه مند هستید تا انتهای این مقاله همراه ما باشید و چنانچه بعد از پایان مقاله، همچنان پرسش یا ابهامی در این زمینه داشتید، می توانید در بخش کامنت ها، سؤالات خود را با ما مطرح کنید.

پایگاه داده اوراکل Oracle

اوراکل چیست؟

اوراکل  نوعی رابط انتقال داده است که یک بلاکچین را به اطلاعات خارج از زنجیره و دنیای واقعی متصل می کند تا کاربران با کمک آن بتوانند داده ها را در قراردادهای هوشمند خود جستجو کنند. به عنوان مثال، یک اپلیکیشن  غیرمتمرکز (برای اطلاعات بیشتر درباره اپلیکیشن غیر متمرکز می توانید مقاله : اپلیکیشن غیرمتمرکز (Dapps) چیست؟ را بخوانید. ما در این مقاله بطور مفصل به این موضع پرداخته ایم.)

پیش بینی بازار از اوراکل ها برای تسویه پرداخت ها بعد از رویدادها استفاده می کند. فرض کنید، یک بازار پیش بینی از شما بخواهد که ETH خود را بر روی اینکه چه کسی رئیس جمهور بعدی ایالات متحده خواهد شد، شرط بندی کنید. در واقع در چنین شرایطی، این بازار از اوراکل ها برای تأیید نتیجه و پرداخت ETH به برندگان استفاده می کند.

از آنجا که، بلاکچین ها و قراردادهای هوشمند نمی توانند به داده های خارج از زنجیره یا خارج از شبکه دسترسی داشته باشند، اوراکل ها به عنوان پلی بین بلاکچین و دنیای خارج آن عمل می کنند. به طورکلی می توان گفت که حضور اوراکل (Oracle)  در فضای بلاکچین ضروری می باشد چون اوراکل ها با گسترش دامنه عملکرد قراردادهای هوشمند به عنوان رابط بین داده های خارج از زنجیره و درون زنجیره عمل می کنند. در واقع، بدون حضور اوراکل ، قراردادهای هوشمند عملکرد و کاربرد بسیار محدودی خواهند داشت چرا که در چنین شرایطی آن ها فقط می توانند با اطلاعات داخل شبکه بلاکچین ارتباط داشته باشند.

نکته حائز اهمیت این است که یک اوراکل ، منبع اطلاعات و داده نیست بلکه به عنوان یک لایه مجزا از بلاکچین، منابع داده خارجی را بررسی، تأیید و احراز هویت می کند و سپس اطلاعات آن ها را به داخل شبکه انتقال می دهد. داده های مختلفی مانند اطلاعات قیمت، تکمیل موفقیت آمیز پرداخت یا دمای اندازه گیری شده از طریق یک سنسور می تواند توسط یک اوراکل به داخل شبکه بلاکچین منتقل شود. نکته جالب توجه دیگر این است که برخی از اوراکل ها علاوه بر انتقال اطلاعات به قراردادهای هوشمند می توانند اطلاعات را به منابع خارجی نیز برگردانند.

اوراکل چیست؟

انواع اوراکل بلاکچین

انواع مختلفی از اوراکل  بلاکچین وجود دارد که آن ها را می توان با توجه به موارد زیر طبقه بندی کرد:

  1. منبع: داده های یک اوراکل از نرم افزار یا سخت افزار منشأ می گیرد؟
  2. جهت اطلاعات: یک اوراکل اطلاعات را به شبکه بلاکچین وارد و یا از آن خارج می کند؟
  3. اعتماد : اوراکل مورد نظر متمرکز است یا غیرمتمرکز؟

نحوه عملکرد یک اوراکل بلاکچین کاملاً به آنچه برای آن طراحی شده است، بستگی دارد. اوراکل ها را بر اساس منبع، جهت جابه جایی اطلاعات و متمرکز یا غیرمتمرکز بودن، به صورت زیر طبقه بندی می کنند.

✅ اوراکل نرم افزاری (Software oracle)

یک اوراکل  نرم افزاری با منابع آنلاین اطلاعاتی مانند سرورها، وب سایت ها و یا منابع داده در ارتباط است تا بتواند اطلاعات دریافتی را به شبکه بلاکچین منتقل کند. اتصال اوراکل های نرم افزاری به اینترنت نه تنها به آن ها اجازه می دهد تا اطلاعات قراردادهای هوشمند را تأمین کنند، بلکه می توانند اطلاعات دریافتی را در زمان واقعی انتقال دهند. این ویژگی، آن ها را به یکی از رایج ترین انواع اوراکل های بلاکچین تبدیل می کند. توجه داشته باشید که اطلاعات مختلفی مانند نرخ ارز، قیمت رمزارزها یا اطلاعات پرواز از جمله مواردی هستند که می توانند توسط این اوراکل ها منتقل شوند.

اوراکل سخت افزاری (Hardware oracle)

برخی از قراردادهای هوشمند باید با دنیای واقعی ارتباط برقرار کنند. اوراکل های سخت افزاری اطلاعات را از دنیای فیزیکی دریافت و در اختیار قراردادهای هوشمند قرار می دهند. یک اوراکل  سخت افزاری می تواند اطلاعات را از حسگرهای حرکتی دوربین، حسگرهای شناسایی فرکانس رادیویی (RFID)، دماسنج ها یا اسکنرهای بارکد دریافت و ارسال کند. به طورکلی می توان گفت که یک اوراکل سخت افزاری رویدادهای دنیای واقعی را به ارزش های دیجیتال قابل درک توسط قراردادهای هوشمند تبدیل می کند.

اوراکل ورودی و خروجی (Inbound and outbound oracles)

اوراکل ها یک خط ارتباطی دو طرفه با بلاکچین ایجاد می کنند. این بدان معناست که آن ها می توانند داده ها را به داخل یا خارج شبکه بلاکچین انتقال  دهند. اوراکل های ورودی، داده های خارج از شبکه یا داده های دنیای واقعی را به بلاکچین منتقل می کنند. توجه داشته باشید که این اطلاعات می تواند هر چیزی مانند نوسانات قیمت یک دارایی، شرایط آب و هوایی و یا تأیید پرداخت های موفق باشد.

به طور مثال تصور کنید که شخص A با شخص B شرط می بندد که دریک هفته آینده، هر روز هوا بارانی خواهد بود. سپس آن ها مبلغ شرط بندی را در یک قرارداد هوشمند قفل می کنند. اوراکل به شکل مرتب، گزارش آب و هوا را چک کرده و بعد از یک هفته، وجه قفل شده در قرارداد هوشمند را برای شخص برنده واریز می کند.

بر خلاف اوراکل های ورودی، اوراکل های خروجی می توانند داده های بلاکچین را به دنیای بیرون منتقل کنند. در واقع، اوراکل های خروجی اطلاعات و رویدادهایی درون شبکه را به دنیای واقعی اطلاع می دهند. برای مثال، ممکن است یک قرارداد هوشمند به دنبال واریز ارز دیجیتال به یک آدرس کیف پول رمزنگاری مشخص، دستور باز کردن قفل هوشمند در یک واحد اجاره ای در دنیای واقعی را صادر کند.

اوراکل متمرکز و غیرمتمرکز (Centralized and decentralized oracle)

یک اوراکل متمرکز از طریق یک نهاد واحد کنترل می شود. بنابراین، شرکت کنندگان در این قرارداد هوشمند باید به میزان قابل توجهی به این نهاد واسط اعتماد کنند و این موضوع با ماهیت و دلیل به وجود آمدن فناوری بلاکچین در تضاد بوده و می تواند امنیت یک قرارداد هوشمند را تهدید کند. به طورکلی می توان گفت که دقت و اثربخشی قراردادهای هوشمند به میزان زیادی با کیفیت اطلاعات دریافتی آن ها وابسته است. بنابراین، اوراکل ها قدرت قابل توجهی در حفظ قراردادهای هوشمند دارند. توجه داشته باشید که مهم ترین چالش  کلیدی پیش روی این اوراکل ها، حفظ حریم خصوصی، امنیت و اجتناب از تمرکز بیش از حد می باشد.

از طرف دیگر، اوراکل های غیرمتمرکز اطلاعات را به صورت غیرمتمرکز به دست می آورند و این ویژگی با ماهیت به وجود آمدن صنعت بلاکچین تطابق دارد. این اوراکل ها با استفاده از منابع داده  مختلف، سطح بالاتری از امنیت و انصاف را برای قراردادهای هوشمند فراهم می کنند.

یکی از تفاوت های اساسی oracle غیرمتمرکز با oracle متمرکز در این است که اوراکل های متمرکز مستعد دستکاری و کلاهبرداری می باشند. به همین دلیل، بسیاری از پروژه های بلاکچینی مانند Chainlink (LINK)، Band Protocol (BAND)، Augur (REP) و MakerDAO در حال توسعه اوراکل های غیرمتمرکز خود هستند.

اوراکل خاص قرارداد

(Contract-specific oracle)  اوراکل مخصوص قرارداد، اوراکلی است که به منظور استفاده در یک قرارداد هوشمند طراحی شده است. این بدان معناست که اگر کسی بخواهد چند قرارداد هوشمند را راه اندازی کند، باید تعداد متناسبی از اوراکل های خاص را نیز ایجاد نماید. توجه داشته باشید که نگهداری از این نوع اوراکل، بسیار وقت گیر و پرهزینه می باشد. بنابراین، ممکن است شرکت هایی که به چندین منبع داده  نیاز دارند، استفاده از این اوراکل ها را مناسب ندانند اما از طرف دیگر، چون این اوراکل ها متناسب با نیاز توسعه دهندگان طراحی می شوند، توجه بسیاری از متخصصین این حوزه برا به خود جلب کرده اند.

اوراکل انسانی (Human oracle)

گاهی اوقات برخی افراد با دانش تخصصی، می توانند به عنوان اوراکل عمل کنند. در واقع، آن ها می توانند صحت اطلاعات را از منابع مختلف تحقیق و تأیید کنند و سپس اطلاعات را برای قراردادهای هوشمند ترجمه کنند. از آنجا که اوراکل های انسانی می توانند هویت خود را با استفاده از علم کریپتوگرافی تأیید کنند، امکان جعل هویت و ارائه داده های اشتباه در این روش پایین است.

اوراکل انسانی (Human oracle)

نقش oracle در بلاکچین چیست؟

اوراکل ها، سیستم های کامپیوتری پیچیده ای هستند که داده های دنیای بیرون (خارج از زنجیره) را به دنیای بلاکچین (داخل زنجیره) متصل می کنند. دلیل اهمیت اوراکل های بلاکچینی این است که این اوراکل ها موجب اتصال بلاکچین و قراردادهای هوشمند به دنیای واقعی می شوند. به عنوان مثال، اگر شخص A، خانه  شخص B را با رمزارز و در قالب یک قرارداد هوشمند خریداری کند. هنگامی که شخص A مبلغ خرید خانه را برای شخص B ارسال کند، سند خانه به صورت غیرقابل برگشت از شخص B به شخص A منتقل می شود. در این مثال، اوراکل نقش مهمی در تأیید پرداخت و یا بررسی و تأیید دریافت سند برعهده دارد.

بهترین پروژه های oracle

در سال های اخیر با مشکل عدم تعامل شبکه های بلاکچینی با داده های دنیای واقعی روبرو بوده ایم و این موضوع به عنوان یکی از چالش های مهم در حوزه بلاکچین بوده است. به منظور حل این مشکل، کمپانی های فعال در این حوزه، مفهوم اوراکل  را به این صنعت معرفی کرده و در طی این مدت اوراکل هایی مانند Chainlink، Witnet، Provable، Band Protocol، Decentralized Information Asset (DIA) و API3 را به بازار معرفی نموده اند.

بهترین پروژه های oracle

نقش اوراکل در امور مالی غیرمتمرکز (DeFi)

همزمان با رشد سریع  امور مالی غیرمتمرکز (DeFi) (پیشنهاد می کنیم مقاله : دیفای چیست؟ را مطالعه نمایید)، اوراکل ها نیز به اکوسیستم دیفای معرفی شدند. در واقع، oracle نقش یک پیام رسان را بین داده های دنیای واقعی و بلاکچین ایفا می  کند. به عنوان مثال، قراردادهای هوشمندی که بر روی شبکه اتریوم فعالیت می کنند، کاملاً مستقل هستند و برای هرگونه دسترسی به داده های خارج از زنجیره شبکه محدودیت دارند.

به منظور حل این مشکل، تعدادی از قراردادهای هوشمند به یک ارائه دهنده اطلاعات خارجی یا همان اوراکل متصل هستند تا بتوانند اطلاعات را به دنیای واقعی ارسال و یا از آن دریافت کنند. بنابراین، اوراکل ها نقش مهمی در حفظ امنیت و سطح تمرکززدایی پروتکل های DeFi دارند.

مزایای oracle

اوراکل ها، موجب ایجاد تحول گسترده ای در صنعت بلاکچین شدند. مهم ترین مزیت اوراکل ها، ایجاد ارتباط بین شبکه بلاکچین و دنیای واقعی است. این اوراکل ها، اطلاعات و داده های دنیای واقعی را به قراردادهای هوشمند منتقل و اطلاعات دیگری را از شبکه و قراردادهای هوشمند به محیط بیرون انتقال می دهند. علاوه بر این، از دیگر مزیت های اوراکل ها می توان به امکان ذخیره سازی و پردازش حجم زیادی از اطلاعات اشاره کرد.

معایب oracle

اوراکل ها نقش مهمی در حفظ سلامت یک شبکه بلاکچینی دارند چون قراردادهای هوشمند، تصمیمات را بر اساس داده های ارائه شده توسط اوراکل ها اجرا می کنند. چالش اصلی oracle ها این است که اگر یک اوراکل به خطر بیفتد، قرارداد هوشمند متکی به آن نیز به خطر می افتد. یکی دیگر از مشکلات اوراکل ها، امنیت آن هاست. در واقع، یک اوراکل فقط به اندازه منبع  داده های خود ایمن است.

به طور مثال، فرض کنید که یک اپلیکیشن غیرمتمرکز از طریق اوراکل خود به صرافی یونی سواپ (Uniswap) (برای کسب اطلاعات بیشتر درباره یونی سواپ، مقاله: یونی سواپ چیست؟ را بخوانید. در این مقاله بطور مفصل به این موضوع پرداخته ایم) متصل شود تا بتواند قیمت ETH/DAI را به دست آورد. در همین زمان، فرد مهاجم می تواند قیمت را در Uniswap تغییر داده و درک dapp را از قیمت فعلی بازار دستکاری کند. حملات Man-in-the-Middle نیز می تواند یکی دیگر از معایب اوراکل ها باشد، جایی که یک عامل مخرب به جریان داده بین اوراکل ها و قرارداد هوشمند دسترسی پیدا کرده و داده ها را اصلاح یا جعل می  کند.

چرا از اوراکل استفاده می کنیم؟

اوراکل ها به عنوان یکی از بهترین پایگاه های انتقال داده در حوزه بلاکچین عمل می کنند. در واقع، اوراکل ها، داده ها را از منابع خود دریافت و سپس آن ها را بررسی کرده و در صورت تأیید، آن ها را به شبکه بلاکچین و یا قراردادهای هوشمند منتقل می کنند. به طورکلی می توان گفت که  oracleیک نرم افزار مدیریت سرور پایگاه داده قدرتمند است که می تواند نیازهای سطح   Enterprise  و برنامه های کوچک را برآورده کند.

جمع بندی

اوراکل ها مسئول انتقال داده ها از دنیای واقعی به قراردادهای هوشمند یا شبکه های بلاکچینی بوده و به عنوان پلی بین شبکه بلاکچین و رویدادهای دنیای واقعی عمل می کنند. نکته جالب توجه این است که اوراکل ها، منبع اطلاعات و داده نیستند، بلکه به عنوان یک رابط، منابع اطلاعاتی خارج از بلاکچین را بررسی، تأیید و احراز هویت می کند و سپس اطلاعات این منابع را به داخل شبکه بلاکچین انتقال می دهند. به طورکلی می توان گفت که oracle ها یکی از مهم ترین چالش های حوزه بلاکچین را که همان بسته بودن شبکه های بلاکچینی و قراردادهای هوشمند است، برطرف نموده است.

سؤالات متداول

اوراکل (oracle) چیست؟

اوراکل ها، داده های خارجی را برای شبکه بلاکچین و قراردادهای هوشمند فراهم کرده و به نوعی رابط بین دنیای بیرون و دنیای بلاکچین هستند.

آیا اوراکل ها به عنوان منبع اطلاعات و داده عمل می کنند؟

خیر. اوراکل ها منبع اطلاعات نیستند بلکه به عنوان یک رابط، داده ها را به شبکه بلاکچین منتقل و یا اطلاعات را از بلاکچین به دنیای واقعی انتقال می دهند.

می توانید به این محصول امتیاز بدهید

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سبد خرید