پس از اینکه پتانسیلهای قراردادهای هوشمند مشخص شد، توسعهدهندگان تصمیم گرفتند خدمات زیادی را توسط این قراردادها ارائه کنند. اسمارت کانترکتها دادهها را دریافت کرده و به صورت کاملا خودکار، سریع، کمهزینه و مطمئن نتیجه را ارائه میکنند. در این بین یک سوال مهم به وجود آمد؛ دادهها از کجا باید تامین شود؟
دریافت دادهها از دنیای حقیقی و ارسال به فضای بلاک چین نیاز به پلتفرمهای خاصی داشت و به همین دلیل اوراکلها به وجود آمدند. اوراکل به خوبی نقش یک واسطه را میان دو دنیای متفاوت بازی خواهد کرد تا تامین دادهها با سرعت بیشتری صورت پذیرد.
اوراکل چیست؟
فناوری بلاک چین به خارج از شبکه دسترسی ندارد. در نتیجه قرارداد هوشمند (Smart Contract) نیز نمیتواند به صورت خودکار اطلاعاتی از بیرون از شبکه دریافت کند. برای حل این مشکل پدیدهای به نام اوراکل (Oracle) به وجود آمد. اوراکلها واسطههایی هستند که دادهها را از پلتفرمهای مجازی یا حقیقی که خارج از شبکه بلاک چین فعال هستند دریافت کرده و برای قراردادهای هوشمند ارسال میکنند. با استفاده از این تکنولوژی دامنه فعالیت قراردادهای هوشمند بیشتر میشود.
Oracle یک منبع داده نیست بلکه کانالی است که یک طرف آن به بلاک چین و طرف دیگر به سایر بسترهای دیجیتالی متصل است. فرض کنید یک قرارداد هوشمند بدین منظور ایجاد شده که اگر آبوهوای شهر در روزهای اول ماه بارانی باشد، مبلغی به حساب شرکتهای خدماتی برای نظافت شهر واریز شود.
اطلاعات حساب کاربری یا کیف پول شرکتهای خدماتی و شرکت واریز کننده در بلاک چین موجود است اما اطلاعات آبوهوا خارج از شبکه است. پس باید دادهها از یک نرمافزار یا سازمان متخصص در زمینه آبوهوا دریافت شود که خارج از شبکه بلاک چین است. این سازمان یا نرمافزار به عنوان API عمل خواهد کرد. Oracle از یک طرف با سازمان یا نرمافزار هواشناسی و از طرف دیگر با اسمارت کانترکت ارتباط برقرار کرده تا دادههای اولیه را برای آنها تامین کند.
برخی از اوراکلها توانایی ارسال نتیجه قرارداد هوشمند را برای جامعه هدف نیز دارند. در مثال بالا اطلاعات راههای ارتباطی به شرکتهای خدماتی به Oracle اعلام شده و پس از واریز دارایی اطلاعرسانی به آنها انجام خواهد شد.
انواع مختلف Oracle
انواع مختلفی برای این واسطهها وجود دارد که بر اساس منبع اطلاعات، مسیر اطلاعات و میزان اعتبار میتوان آنها را دستهبندی کرد. منظور از منبع اطلاعات بستری است که دادهها را در اختیار Oracle قرار میدهد. این منبع میتواند سختافزاری یا نرمافزاری باشد.
مسیر اطلاعات دارای دو نوع خروجی و ورودی است. همان طور که ذکر شد برخی اوراکلها توانایی ارسال داده به اسمارت کانترکتها و مخاطبان را همزمان داشته و برخیها فقط انتقال داده در یک مسیر را انجام میدهند. معتبر بودن دادهها نیز به متمرکز یا غیرمتمرکز بودن پلتفرم دریافت داده بستگی دارد. پلتفرمهای غیرمتمرکز اعتبار بیشتری نسبت به متمرکزها دارند.
اوراکل نرمافزاری
اوراکل نرمافزاری (Software Oracle) دادهها را از طریق منابع آنلاین و دیجیتال دریافت میکند. سرورها، وبسایتهای اطلاعرسانی، پایگاهداده، نرمافزارهای موبایلی و … جزو منابع اطلاعاتی آنلاین هستند. از مزیتهای اوراکل نرمافزاری میتوان به ارسال سریع اطلاعات، ثبت تغییرات لحظهای و دسترسی بهتر اشاره کرد. دادههایی مثل نرخ ارزهای دیجیتال، اطلاعات پرواز، نتایج مسابقات ورزشی و … دادههایی هستند که توسط این واسطهها به خوبی منتقل میشوند.
اوراکل سختافزاری
گاهی اوقات اطلاعات باید از دنیای فیزیکی دریافت شود. گرچه در روند دریافت اطلاعات توسط اوراکل سختافزاری (Hardware Oracle) دستگاههای دیجیتال نقش خواهند داشت اما دادهها به صورت مستقیم از یک کالا یا خدمت فیزیکی دریافت شده و به قراردادهای هوشمند ارسال خواهد شد. به نوعی میتوان گفت اوراکل سختافزاری دادههای فیزیکی را به شکل کدهای دیجیتالی درآورده تا در بلاک چین قابل پردازش باشد.
از نمونههای اوراکل سختافزاری میتوان به دریافت داده از اسکنر بارکدها، حسگرهای الکترونیکی، دوربینهای ترافیکی و … اشاره کرد.
اوراکل ورودی و خروجی
اوراکل ورودی (Inbound Oracle) دادهها را از منابع خارجی دریافت کرده و برای قرارداد هوشمند ارسال میکند اما اوراکلهای خروجی (Outbound Oracle) اطلاعات حاصل از پردازش قراردادهای هوشمند را به دنیای بیرونی و جامعه هدف ارسال میکنند.
برای مثال ارسال دادههای سنسور اندازهگیری دما به وسیله یک اوراکل ورودی انجام شده و صدور فرمان روشن شدن تاسیسات سرمایشی و گرمایشی توسط اوراکل خروجی صورت میگیرد.
اوراکل متمرکز و غیرمتمرکز
متمرکز بودن یک پلتفرم به معنای کنترل و مدیریت یک شخص یا سازمان روی اطلاعات و فرایندهای پردازش است. بلاک چین بر پایه مفهوم غیرمتمرکز ساختن به وجود آمده است زیرا هیچ شخص یا سازمانی مالکیت قرارداد یا رمزارز را در اختیار نداشته و پس از ورود اطلاعات امکان انجام اصلاحات یا تغییرات را ندارد.
منابع اطلاعاتی اوراکلها نیز میتواند متمرکز یا غیرمتمرکز باشد. با توجه به اینکه بخش زیادی از منابع اطلاعاتی به طور مستقیم و غیرمستقیم توسط افراد یا گروههایی هدایت میشود، میتوان آنها را متمرکز دانست. برای مثال اطلاعاتی که مربوط به بارکدهای کالا است میتواند دچار تغییر شود. کافی است عوامل انسانی اصلاحاتی روی بارکد ایجاد کنند یا فرایند شناسایی بارکد را تغییر دهند. در طرف مقابل اطلاعاتی که از وبسایتهای اطلاعرسانی دریافت میشود تقریبا غیرمتمرکز است. برای مثال اطلاعات آبوهوا که از طریق پلتفرم گوگل اعلام میشود توسط دادههای مختلف از وبسایتها و سازمانهای معتبر دریافت شده و پس از اعتبارسنجی در اختیار کاربران یا Oracle قرار میگیرد. هر چه منابع اطلاعاتی غیرمتمرکزتر باشند نتایج به دست آمده از طریق قرارداد هوشمند اعتبار بیشتری خواهد داشت.
اوراکلهای غیرمتمرکز برای افزایش دقت و صحت اطلاعات از فرایندهای اعتبارسنجی استفاده میکنند. اعتبارسنجی در Oracle به این صورت است که دادهها از چندین منبع و اوراکل مختلف جمعآوری میشود و سپس در اختیار اوراکل غیرمتمرکز قرار میگیرد. به این ترتیب احتمال خطای سهوی و عمدی تا حد زیادی کاهش پیدا میکند.
اوراکلهای خاص
اوراکلهای خاص (Contract-Specific Oracle) به صورت اختصاصی برای یک قرارداد هوشمند طراحی میشوند. برخی از اسمارت کانترکتها نیاز به اطلاعاتی خاص دارند که در اوراکلهای عمومی و پیشین موجود نیست. به همین دلیل پلتفرمهای ارائهدهنده Oracle باید برای این موضوع طراحی و توسعه جدید انجام دهند. این فرایند هزینه زیادی داشته و نیاز به زمان زیادی دارد. در نتیجه فقط برای برخی مجموعهها و قراردادهای مهم صورت میگیرد و چندان رایج نیست.
اوراکل انسانی
اوراکل انسانی (Human Oracle) به فردی گفته میشود که با داشتن اطلاعات مناسب از فناوری بلاک چین و علوم تحقیقاتی و کامپیوتری، شروع به جمعآوری اطلاعات کرده و آنها را در اختیار اسمارت کانترکت قرار میدهد. این نوع از Oracle سادهترین و اولین نوع آن است که به طور مشخص اعتبار کمتری نسبت به سایر موارد دارد. از اوراکل انسانی برای موضوعات بسیار خاص، امور آزمایشگاهی و پروژههای کمهزینه استفاده میشود.
تاثیر صحت اطلاعات اوراکلها بر قراردادهای هوشمند
مهمترین چالشی که در مورد این واسطهها وجود دارد امنیت اطلاعات است. Oracle بخشی از شبکه بلاک چین نیست و به همین دلیل فرایندهای آن توسط این شبکه گارانتی نمیشود. گرچه هر روز اوراکلها تلاش میکنند اعتبار اطلاعات را بیشتر کرده و فرایندهای خودکار و معتبر را توسعه دهند اما همچنان نقاط ضعفی وجود دارد. یک اوراکل نرمافزاری که به صورت غیرمتمرکز فعال است میتواند معتبرترین نوع واسطه باشد اما همچنان دسترسیهایی برای دستکاری اطلاعات وجود دارد. اطلاعات ارسال شده توسط اوراکلها نتیجه نهایی قراردادهای هوشمند را رقم میزنند و زمانی که اطلاعات از صحت کامل برخوردار نبوده، قاعدتا نتیجه نیز نمیتواند قابل اتکا باشد.
جمعبندی
با ظهور قراردادهای هوشمند و اوراکلها به زودی بخش زیادی از خدماتی که به طور روزانه دریافت خواهیم کرد از طریق این پلتفرمها خواهد بود. به کمک فناوری بلاک چین اطلاعات با دقت بیشتری منتقل میشوند و فرایندهای پردازشی سریعتر نتیجه نهایی را به دست میآورند. نتیجه نهایی نیز اعتبار بیشتری دارد. در کنار این مزایا، ارائه خدمات به صورت ارزانتر انجام شده و احتمالا تنوع و کیفیت آنها نیز بیشتر خواهد شد.
توسعهدهندگان این فناوری هر روز تلاش میکنند تا اوراکل سختافزاری یا نرمافزاری جدید را به دنیای بلاک چین متصل کنند تا قراردادهای هوشمند بانک اطلاعاتی گستردهتری را در اختیار داشته باشند. به این ترتیب اوراکلها دنیای واقعی و فیزیکی را به شبکه بلاک چین متصل میکنند تا شاهد تاثیرات بیشتر قراردادهای هوشمند در زندگی روزمره باشیم.