جهانی را در نظر بگیرید که در آن در ازای زمانی که در اینترنت صرف می کنید به شما هزینه ای پرداخت می شود. یا در حالی که در خانه مشغول انجام کارهای شخصی خود هستید ماشین شما در حال جابه جایی مسافران است.

فناوری بلاک چین امکان ایجاد جهانی با برنامه های غیرمتمرکز را برای ما فراهم کرده است. در ادامه این مطلب می خواهیم بدانیم پلتفرم های غیرمتمرکز یا همان Dapp چیست و چه کاربرد و ویژگی هایی دارند. 

dapp چیستDapp چیست؟

Dapp مخفف عبارت Decentralized Application و به مفهوم برنامه های غیرمتمرکز است. برنامه های غیرمتمرکز درواقع برنامه هایی هستند که خارج از محدوده نظارت و کنترل یک مرجع واحد فعالیت می کنند.

برنامه های وب معمولی مانند Twitter توسط یک سازمان اداره می شوند. اختیارات کامل برنامه و عملکرد آن توسط آن سازمان اداره می شود.

Dapp ها در شبکه p2p یا بلاکچین اجرا می شوند. به طور مثال BitTorrent ،Tor و Popcorn Time روی رایانه هایی اجرا می شوند که بخشی از یک شبکه p2p هستند.

در حوزه رمزارزها، Dapp  ها در یک محیط عمومی در شبکه بلاکچین، منبع باز و غیرمتمرکز اجرا می گردند. هیچ مرجعی این برنامه ها را کنترل نمی کند.

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

بیشتر بخوانید: بلاک چین چیست؟

شرح کوتاهی از بلاک چین

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

بیشتر بخوانید: دیفای یا سیستم غیرمتمرکز چیست؟

مهم ترین ویژگی Dapp ها

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

ویژگی dapp

بیشتر بخوانید: قرارداد هوشمند چیست؟

برای درک بهتر برنامه های غیرمتمرکز می خواهیم برنامه های تحت وب معمولی را با برنامه های غیرمتمرکز مقایسه کنیم.

کلیه برنامه های تحت وب معمولی دو جزء اصلی دارند:

  • فرانت اند(FrontEnd)
    بخش قابل درک برنامه توسط کاربر را فرانت اند می گویند. در واقع بخش ظاهری برنامه مانند ورودی، صداها، ویدیوها و...
  • بک اند(BackEnd)
    هر چیزی که در پس زمینه برنامه قرار دارد و وظیفه انجام محاسبات و... را برعهده دارد بک اند گفته می شود.
    به طور مثال در نظر بگیرید قصد خرید یک بلیت از یک سایت را دارید. پس از باز کردن سایت تعامل شما با بخش فرانت اند سایت انجام می شود. پس از ورود اطلاعات، برنامه تحت وب موردنظر اطلاعات شما را در پایگاه داده سرور که بخشی از بک اند اسات ذخیره می کند.
    در این میان مفهوم دیگری وجود دارد که وظیفه اتصال بین فرانت اند و بک اند را به عهده دارد و به آن میدل اند (MiddleEnd) می گویند.

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

در واقع در این برنامه ها برای نگهداری کدهای برنامه به جای استفاده از سرورهای مرکزی از بلاک چین غیرمتمرکز استفاده می گردد.

تفاوت برنامه های متمرکز و غیرمتمرکز

بیشتر بخوانید: شبکه بلاک چین اتریوم چیست؟

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

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