ارتباط اوراکل (Oracle) با دنیای کریپتو
فناوری بلاک چین که یکی از اجزای اصلی ارزهای دیجیتال است، با تمام نوآوریها و راهحلهای خلاقانهای که برای حل بسیاری از مشکلات به ارمغان آورده، محدودیتهای خاص خود را هم دارد. یکی از همین مشکلات عدم توانایی بلاک چین در ارتباط با دنیای بیرون است. خوشبختانه متخصصان این حوزه برای هر مشکلی که در استفاده از بلاک چین سر راهشان قرار میگیرد، یک راهحل خوب و قابل قبول ارائه میدهند که اوراکلها راهحل این افراد برای حل مشکل ارتباط بلاک چین با دنیای بیرون است. به همین دلیل قصد داریم ارتباط اوراکل (Oracle) با دنیای کریپتو را بررسی کنیم. در ادامه میخواهیم به طور دقیقتر در مورد مفهوم اوراکل و مشکلی که سعی در حل آن دارد، صحبت کنیم و ببینیم که چرا اصلاً به چنین چیزی نیاز داریم. همچنین در مورد انواع اوراکل و کاربردهای آن بحث خواهیم کرد. پس لطفاً ما را تا انتها همراهی کنید.جهت کسب اطلاعات بیشتر در حوزه فارکس به آکادمی محمد کریمی بپیوندید...
اوراکل (Oracle) چیست و ارتباط اوراکل با دنیای کریپتو
به پلتفرم یا پروژههایی که وظیفهی آنها ارائه اطلاعات و دادههای دنیای واقعی به داخل بلاک چین است، اوراکل میگوییم.
بزرگترین کمپین آموزشی بازارهای مالی با محمد کریمی
مثالی از یک اوراکل
فرض کنیم دو نفر به نامهای علی و رضا در جمع دوستانهی خود و به عنوان تفریح تصمیم میگیرند روی نتیجهی مسابقهی فوتبال بین استقلال و پرسپولیس شرطبندی کنند. شرط آنها هم این است که هر دو، نفری ۵ دلار کنار بگذارند و بعد از پایان مسابقه هر کس که تیم برنده را درست حدس زده باشد، ۱۰ دلار کنار گذاشته شده را برای خود بردارد. علی برد استقلال و رضا برد پرسپولیس را انتخاب میکنند و طرفین با هم توافق میکنند که اگر بازی مساوی تمام شد ۵ دلار هر شخص به خودش برگردانده شود. این دو نفر که مهندس کامپیوتر هم هستند تصمیم میگیرند برای به حداقل رساندن احتمال تقلب، اطمینان کامل از برگزاری روند شرطبندی و تضمین پرداخت پول از هر دو طرف، شرطبندی خود را در قالب یک برنامهی غیرمتمرکز کوچک نوشته و روی بلاک چین پیادهسازی کنند. برای این کار آنها یک قرارداد هوشمند مینویسند که در کدهای آن توافقات انجام شده، نوشته میشود. به عبارت دیگر در این قرارداد نوشته شده که هر دو طرف برای ورود به شرطبندی باید مبلغ ۵ دلار را در قالب ارز دیجیتال «تتر» (Tether) به آدرس این قرارداد هوشمند واریز کنند، همچنین نوشته میشود که اگر استقلال برنده بود ۱۰ دلاری که به حساب قرارداد هوشمند واریز شده، به آدرس کیف پول دیجیتال علی و اگر پرسپولیس برنده بود این مبلغ به آدرس رضا منتقل شود. اگر هم بازی مساوی شود ۵ دلار به آدرس کیف پول هر شخص بازگردانده خواهد شد.مثالی دیگر از کاربرد اوراکل
حال سوالی که مطرح میشود این است که این برنامهی غیرمتمرکز یا بهتر است بگوییم قرارداد هوشمند نوشته شده، نتیجهی دربی را از کجا بداند؟ مسابقهی فوتبالی که در دنیای بیرون از بلاک چین انجام میشود و قرارداد هوشمند هیچ راهی برای دسترسی مستقیم به آن ندارد. اینجاست که اوراکلها وارد صحنه میشوند. در حقیقت این وظیفهی اوراکل است که نتیجهی دربی را بعد از پایان مسابقه به شکل یک دادهی دیجیتال در آورد و آن را در اختیار بلاک چین و قرارداد هوشمند قرار دهد. بدین ترتیب بعد از پایان مسابقهی دربی، اوراکل دادهای با محتویات «مساوی» به قرارداد هوشمند ارسال میکند. سپس این قرارداد هوشمند بلافاصله بعد از دریافت این ورودی و براساس کدهایی که از قبل نوشته شده، ۱۰ دلار واریز شده به حساب خود را نصف کرده و نفری ۵ دلار به آدرس کیف پول علی و رضا واریز میکند. نکتهی مهمی که باید به آن توجه داشت این است که منظور از اوراکل خود آن منبع اطلاعاتی نیست. در حقیقت اوراکل دادهی مورد نظر را از منبع میگیرد، آن را راستیآزمایی میکند و به شکلی در میآورد که قراردادهای هوشمند بتوانند آن را بخوانند. سپس این داده را منتشر میکند. در مثال قبل میتوانیم سایت سازمان لیگ را که نتیجهی نهایی دربی را مشخص میکند «منبع داده» و یک پروژهی بلاک چینی که نتایج فوتبال را از منابع مختلف گرفته و آنها را به شکل قابل استفاده در قراردادهای هوشمند تبدیل میکند، «اوراکل» در نظر بگیریم. موضوع دیگر این است که اوراکلها میتوانند دادهها و اطلاعات مختلفی را در اختیار قراردادهای هوشمند بگذارند. برای مثال به جز نتایج مسابقات فوتبال میتوان به پیشبینی آبوهوا، قیمت لحظهای رمز ارزها و داراییهای دیگر، نتایج انتخابات و غیره اشاره کرد.مشکل بزرگ اوراکلها
از آنجایی که در استفاده از اوراکلها به یک عامل بیرونی اعتماد میکنیم باید از درستی اطلاعات آن اطمینان حاصل کنیم.
انواع اوراکل
اوراکلها به چند دسته تقسیم میشوند که از جملهی آنها میتوان به اوراکلهای متمرکز و غیرمتمرکز، اوراکلهای نرمافزاری و سختافزاری، اوراکلهای ورودی و خروجی اشاره کرد.
اوراکلهای نرم افزاری و سخت افزاری
«اوراکل نرمافزاری» (Software Oracle) اطلاعات خود را از منابع آنلاین دریافت کرده و آن را به بلاک چین میفرستد. این اطلاعات ممکن است از پایگاههای داده، سایتها، سرورها و در حالت کلی هر منبع دادهی اینترنتی گرفته شده باشد. از آنجایی که این نوع اوراکلها همواره به اینترنت متصل هستند و میتوانند خیلی سریع و راحت دادههای خود را به روز کنند. برای همین جزو یکی از پراستفادهترین اوراکلها به حساب میآیند. از جملهی دادههایی که اوراکلهای نرمافزاری ارائه میدهند میتوان به نرخ لحظهای قیمت صرافیها یا اطلاعات به روز شرکتهای هواپیمایی اشاره کرد. در طرف دیگر «اوراکل سختافزاری» (Hardware Oracle) را داریم که دادهها و اطلاعات خود را از وسایل فیزیکی در دنیای واقعی میگیرد. دستگاههای دارای حسگر، اسکنرهای بارکد و دیگر دستگاههای مشابه از جملهی اوراکلهای سختافزاری هستند. و میتوانند اطلاعات را در لحظه از دنیای واقعی بگیرند و آن را به دادههای دیجیتالی تبدیل کنند. برای مثال در گمرک میتوان جلوی درب ورودی حسگر نصب کرده و ورود و خروج کامیونهای حمل بار را زیر نظر گرفت. در صورتی که کامیونی وارد گمرک شود حسگر آن را تشخیص میدهد. و میتواند آن را به قرارداد هوشمند مربوط اطلاع دهد تا بر اساس آن تصمیمات بعدی گرفته شود.اوراکل ورودی و خروجی
«اوراکل ورودی» (Inbound Oracle یا Input Oracle) به اوراکلی گفته میشود که اطلاعات را از منابع خارجی به قراردادهای هوشمند منتقل میکند. در حالی که «اوراکل خروجی» (Outbound Oracle یا Output Oracle) اطلاعات را از قرارداد هوشمند به دنیای بیرونی میفرستد. به عنوان یک مثال برای اوراکل ورودی میتوان به میزان دمای هوا اشاره کرد که حسگر آن را اندازه گرفته و به قرارداد هوشمند ارسال میکند. همچنین مثالی از اوراکل خروجی میتواند در استفاده از قفل دیجیتال نمود پیدا کند. مثلاً میتوان قرارداد هوشمندی نوشت که در صورت ریخته شدن پول در آدرس مخصوص آن، با استفاده از اوراکل خروجی به یک قفل دیجیتال پیامی مبنی بر تایید پرداخت پول ارسال کرده و باعث باز شدن آن قفل میشود.اوراکل متمرکز و غیر متمرکز
«اوراکل متمرکز» (Centralized Oracle) توسط یک موجودیت واحد کنترل میشود و تنها عامل ارائهدهندهی اطلاعات به قرارداد هوشمند است. همانطور که گفتیم استفاده از این نوع اوراکلها چندان توصیه نمیشود زیرا کارکرد برنامهی غیرمتمرکز و قراردادهای هوشمند تشکیلدهندهی آن به طور کلی به همین اوراکل واحد وابسته میشود و اگر اشتباهی در درستی اطلاعات آن وجود داشته باشد نتایج ناگواری در پی خواهد داشت. در عوض میتوان از «اوراکل غیرمتمرکز» (Decentralized Oracle) استفاده کرد که از چند منبع اطلاعاتی استفاده میکند. برای مثال «چین لینک» (Chainlink) یکی از پروژههای مشهور ارز دیجیتال است که در زمینهی ارائهی اوراکل فعالیت میکند. اگر سری به صفحهی قیمت اتریوم در این سایت بزنید مشاهده میکنید که اوراکل چین لینک قیمت این رمز ارز را از منابع مختلفی دریافت کرده و براساس آنها یک قیمت واحد به عنوان قیمت قابلاعتماد ارائه میکند.اوراکل سفارشی
«اوراکل سفارشی» (Contract-specific Oracle) به اوراکلی گفته میشود که تنها برای استفاده در یک قرارداد هوشمند خاص طراحی و ساخته شده است. برای همین اگر کسی چندین قرارداد هوشمند داشته باشد مجبور است برای هرکدام یک اوراکل سفارشی ایجاد کند. طراحی این نوع اوراکل بسیار هزینهبر و زمانگیر است. به همین علت شرکتهای تجاری معمولاً از آنها استفاده نمیکنند و ترجیح میدهند به سراغ اوراکلهای ساخته شده توسط شرکتهای دیگر بروند. البته ناگفته نماند که اوراکل سفارشی به خاطر اینکه صرفاً برای استفاده در یک قرارداد هوشمند خاص ساخته میشود، میتواند نسبت به اوراکلهای دیگر انعطافپذیری بیشتری داشته باشد.اوراکل انسانی
برخی اوقات اشخاص حقیقی که در یک موضوع خاص تخصص دارند هم میتوانند به عنوان یک اوراکل ایفای نقش کنند. این افراد که به آنها «اوراکل انسانی» (Human Oracle) میگوییم از منابع مختلف، درستی و صحت یک سری اطلاعات را بررسی میکنند و سپس آنها را به قراردادهای هوشمند میفرستند. از آنجایی که هویت این افراد با استفاده از امضای دیجیتالی مشخص است، احتمال تقلب و ارائهی اطلاعات غلط نیز پایین خواهد بود.کاربرد اوراکلها و ارتباط اوراکل با دنیای کریپتو
از اوراکلها در زمینههای مختلفی مثل دیفای و بازیهای بلاک چینی استفاده میشود.
کاربرد اوراکل در دیفای
«دیفای» (DeFi) به حوزهای از ارزهای دیجیتال گفته میشود که برنامههای غیرمتمرکز فعال در زمینههای مالی را تشکیل میدهد. برای همین است که اسم آن را DeFi گذاشتهاند. زیرا مخفف کلمهی Decentralized Finance به معنی امورمالی غیرمتمرکز است. بسیاری از پروژههای این حوزه برای کارکرد درست خود نیازمند دستیابی به دادههای بیرونی از جمله قیمت لحظهای ارزهای دیجیتال هستند. که اوراکلها این کار را انجام میدهند. برای مثال پروژهای مثل «پنکیک سواپ» (PancakeSwap) که یک صرافی غیرمتمرکز برای خرید و فروش مستقیم ارزهای دیجیتال است. از اوراکلها برای دریافت قیمت رمز ارزهای در حال معامله استفاده میکند.کاربرد اوراکل در بازی های بلاک چینی و ان اف تی
ان اف تی (NFT) یا توکن غیرقابل تعویض به توکنهایی گفته میشود. که هرکدام ویژگیها و مشخصات خاصی نسبت به دیگر واحدها دارند. این روزها معمولاً ان اف تیها را به شکل تصاویر، ویدیوها و آثار هنری دیجیتالی میبینیم که به لطف ثبت شدن در بلاک چین به قیمتهای گزافی به فروش میروند. شرکتهای مختلف میتوانند در پروژههای خود پا را فراتر گذاشته و ان اف تیهای پویا ایجاد کنند. برای مثال میتوانند براساس اتفاقاتی که در دنیای واقعی به وقوع میپیوندد مشخصات و ویژگیهای ان اف تی خود را تغییر دهند. که این اطلاعات دنیای واقعی به کمک اوراکلها در اختیار آنها قرار میگیرد. همچنین بسیاری از بازیهای بلاک چینی از آنجایی که ان اف تیهای کاربران را به شکل تصادفی تولید میکنند، نیاز به یک تابع تصادفیساز قابل اعتماد دارند. با اینکه خود سازندههای چنین بازیهایی هم میتوانند به راحتی یک تابع تصادفیساز ایجاد کنند ولی برای جلب اعتماد کاربران و حصول اطمینان از کاملاً تصادفی بودن ان اف تیهای ساخته شده از اوراکلها استفاده میکنند.پروژههای برتر فعال در زمینه اوراکل
چین لینک، بند پروتکل، ایپیآی۳ از جمله اوراکلهای برتر حوزهی رمز ارزها هستند.