تکنولوژی IBC چیست؟ آشنایی با پروتکل ارتباط بین بلاکچینی
پروتکل ارتباط بین بلاکچینی (IBC)، یک تکنولوژی شگفتانگیز است که مسئولیت احراز هویت و انتقال دادههای بین دو بلاکچین مختلف را برعهده دارد. تکنولوژی IBC به حداقل مجموعهای از توابع نیاز دارد تا تمامی مسیرهای ممکن برای ارتباط بین بلاکچینهای مختلف را هموار سازد. برای اینکه این تکنولوژی بتواند بهدرستی کار کند، نیاز است تا استانداردهای بینزنجیرهای موسوم به ICS در اختیار سازوکار آن قرار بگیرند. برخلاف اکثر فناوریهایی که برای انتقال دادههای بین بلاکچینی و کراس چین ارائه شدهاند، تکنولوژی IBC میتواند در شرایطی امن و مطمئن این کار را انجام دهد.
پروتکل IBC، ساختاری شبیه به شبکه اینترنت دارد؛ بلاکچینها از طریق آن به یکدیگر متصل میشوند و بدون نیاز به ابزارهای اضافه دیگر، با یکدیگر به تبادل داده و دیتا مشغول میشوند. با توجه به اصل تمرکززدایی (Decentralization)، بعید است که فناوری بلاکچین فقط توسط یک شبکه مشخص و توکنهای آن اداره شود. تکنولوژی IBC هم برای تحقق این مسئله بهوجود آمده و در حال حاضر فقط برای بلاکچینهای خصوصی مثل Hyperledger Fabric و Cora مورد استفاده قرار میگیرد. برای آشنایی بیشتر با این فناوری، با ما در بلاگ والکس همراه شوید.
تکنولوژی IBC چیست؟
تکنولوژی ارتباط بین بلاکچینی، برای اولینبار توسط تیم شبکه کازماس (Cosmos) ارائه شد. هدف تیم کازماس، ایجاد یک اینترنت در دنیای شبکههای بلاکچین بود تا از فعالیت یکطرفه و بدون تعامل شبکههای مختلف جلوگیری کند. بهعبارت سادهتر، تیم کازماس در نظر داشت تا با ایجاد یک پروتکل قدرتمند، دنیای بزرگ کریپتوکارنسی را به یک دهکده کوچک و دارای تعامل تبدیل کند؛ دقیقاً مثل تاثیری که اینترنت بر دنیای پیرامون ما گذاشته است. پروتکل IBC به شبکههای مختلف بلاکچین این امکان را میدهد تا بهصورت مستقیم و در قالب شبکه مولتی چین با هم ارتباط برقرار کنند. تکنولوژی IBC، آخرین بخش از پروژه توسعه شبکه کازماس و یکی از ۳ جزء اصلی آن محسوب میشود. دو جزء دیگر شبکه کازماس که باعث تکمیل ساختار آن و تکنولوژی IBC میشوند، Tendermint Core و Cosmos SDK نام دارند.
برای درک کامل IBC، بهتر است که به سازوکار و ساختار شبکه اینترنت جهانی فکر کنید. پروتکلهایی مثل TCP و IP به کامپیوترها این اجازه را میدهند تا با ارائه سرورهای متمرکز باعث برقرار ارتباط بین کاربران شوند. ارتباط بین TCP و آدرسهای IP باعث میشوند تا شبکه اینترنتی که ما میشناسیم شکل بگیرد و ما کاربران از آن استفاده کنیم. تکنولوژی IBC، بهجای برخورداری از سرورهای بزرگ، تمام شبکههای بلاکچین را به یکدیگر وصل میکند. کاربرانی که از IBC بهرهمند میشوند، میتوانند یک حساب کاربری میانچینی (Interchain Account) بسازند، در دنیای دیفای (DeFi) شرکت داشته باشند و با استفاده از چندین شبکه بلاکچین بهصورت همزمان مشغول معامله شوند.
اصولاً همه شبکههای متصل به IBC دارای یک هسته Tendermint هستند؛ این هسته، زیربنای شبکه کازماس و لازمه راهاندازی صحیح IBC ست. همه شبکههایی که با توجه به پروتکلهای Tendermint و Cosmos SDK توسعه پیدا کردهاند، همان زیربنای مشترک کازماس را دارند؛ البته با این تفاوت که رابطهای مصرفکننده نهایی آنها متفاوت است. از آنجاییکه زیربنای همه این شبکهها از یک پروتکل سرچشمه میگیرد، آنها میتوانند با اتصال به IBC با یکدیگر تعامل داشته باشند. تکنولوژی IBC میتواند دادههای یک شبکه بلاکچین را بگیرد، آنها را با توجه به یک فرمت دیگر اجرا کند و به آنها اجازه دهد تا علیرغم زبانهای برنامهنویسی متفاوتشان با هم ارتباط برقرار کنند.
مروری کوتاه بر مفهوم Tendermint
هسته Tendermint، از دو بخش موتور اجماع بلاکچین (Blockchain Consensus Engine) و رابط کاربری عمومی (Generic Application Interface) تشکیل شده است. شبکه کازماس، اولین شبکه بلاکچینی محسوب میشود که در Tendermint اجرا و توسط جی کوان (Jae Kwon) بنیانگذاری شده است. شبکه اصلی این پلتفرم که به تکنولوژی IBC متصل شده است، Cosmos Network Tendermint نام دارد و ساختار آن باعث میشود تا اجزای پروتکل IBC به نتیجه قابل توجهی برسند.
موتور اجماع هسته Tendermint از یک بخش با عنوان Tendermint Core ساخته شده است. این هسته، ثبت تراکنشهایی که توسط گرهها (نودها) اجرا میشوند را تضمین میکند. از طرفی، رابط کاربری یا Application Blockchain Interface که به اختصار ABCI نام دارد، باعث میشود تا تراکنشها بیتوجه به زبانهای برنامهنویسی (اعم از Haskell، Python یا Plutus) پردازش شوند. بهعبارت سادهتر، توسعهدهندگان میتوانند از Tendermint برای تکثیر ماشین BFT اپلیکیشنهایی که به زبان برنامهنویسی اننتخابی خودشان نوشته شدهاند، استفاده کنند.
بهطورکلی، Tendermint به توسعهدهندگان این امکان را میدهد تا بهراحتی و با استفاده از زبان برنامهنویسی دلخواهشان، یک شبکه بلاکچین یا مجموعهای از اپلیکیشنها را راهاندازی و آنها را بهصورت همزمان به شبکههای سازگار با آن متصل کنند.
معرفی شبکههایی که با تکنولوژی IBC سازگار هستند
تعداد پروژههایی که با IBC سازگار هستند، متعددند؛ حتی بسیاری از این پروژهها و پلتفرمها با توجه به کیت نرمافزاری Comos SDK توسعه پیدا کردهاند و راهاندازی شدهاند. بعضی از برجستهترین شبکههای بلاکچین که با ساختار پروتکل IBC سازگار شدهاند، عبارتند از:
- Binance Smart Chain
- Terra
- Crypto.org Chain
- Celer
- Kava
- Oasis
- Secret
لازمبهذکر است ، IBC یک راهکار کاربردی هم برای حل مسئله مقیاسپذیری شبکه اتریوم ارائه داده که با استفاده از Tendermint ساخته شده است. این راهکار از نظر تئوری میتواند باعث فعالیت IBC در شبکههایی مثل اتریوم شود که مقیاسپذیری کمتری دارند. برای مشاهده لیست کامل پروژههایی که با توجه به پروتکل IBC سازگار شدهاند، لیست اپلیکیشنهای شبکه Cosmos را مطالعه کنید.
تکنولوژی IBC: اینترنت شبکههای بلاکچین
پروتکل IBC برای شبکههای بلاکچین بهخصوص مثل همانهایی که در شبکه کازماس توسعه پیدا کردهاند، ضروری و لازم است. تکنولوژی ارتباط بین بلاکچینی (IBC)، یک کانال ارتباطی استاندارد را برای برنامههای کابردی در ۲ شبکه بلاکچی مختلف ارائه میدهد. برای مثال، یک برنامه یا اپلیکیشن میتواند توکنهایی را از جانب یک شبکه بلاکچین دیگر بهعنوان روشی برای پرداخت بپذیرد. مثلاً با استفاده از تکنولوژی IBC میتوان از توکن ATOM که توکن بومی شبکه کازماس است برای پرداخت کارمزد تراکنشها در شبکه یلاکچین اتریوم (ETH) استفاده کرد. این قابلیت بینظیر برای اولینبار است که در فضای کریپتوکارنسی مورد استفاده قرار گرفته و ساختار آن شبیه به یک صرافی همهچیزتمام است.
فناوری IBC فقط به شبکههای بلاکچین پلتفرم کازماس محدود نمیشود. برای مثال، این تکنولوژی قبلاً امکان اتصال و تعامل بین کازماس و بلاکچین اتریوم را فراهم میکرد و باعث شده بود تا پروتکل اجماع اثبات کار (PoW) در اتریوم به اجماع اثبات سهام (PoS) تبدیل شود. البته همه این اتفاقات در حالی رخ میداد که اتریوم هنوز آپدیت نشده بود و در وضعیت پیش از ادغام (Merge) بهسر میبرد. وجود IBC باعث میشود که قابلیتهای منحصربهفرد بلاکچینهای مختلف فقط مختص به خودشان نباشد. برای مثال، با بهکارگیری IB میتوان از شبکه کازماس به اتریوم وصل شد و از ارز دیجیتال اتر (ETH) و ماشین مجازی اتریوم (EVM) برای ثبت تراکنشها استفاده کرد. این فناوری میتواند افزایش مقیاسپذیری را در پی داشته باشد و بهعنوان اینترنت همیشهمتصل شبکههای بلاکچین در نظر گرفته شود. تکنولوژی IBC، در واقع شامل مجموعهای از پُلهایی است که پلتفرمهای مختلف را بههمدیگر پیوند میدهد؛ پل بلاکچین هایی که بدون وجود آنها باید به غیرمتمرکز بودن فناوری بلاکچین شک کرد.
مسئله امنیت و فناوری نوین IBC
اگر توسعهپذیری، قابلیت اطمینان و امکان افزایش مقیاسپذیری را کنار بگذاریم، این سوال مطرح میشود که امنیت کاربران و حسابهای آنها در IBC چگونه است؟ آیا با وجود اتصال به همه بلاکچینها و از بین بردن مرزهای بین شبکههای مختلف توسط IBC، امکان کاهش امنیت و افزایش کلاهبرداری وجود ندارد؟ کلاینتها، اتصالات و کانالهای مربوط به تکنولوژی IBC باعث انتقال هرگونه دیتا میشوند و این مسئله ممکن است که پیامدهای منفی امنیتی را هم در پی داشته باشد. اما IBC چه تدبیری برای این چالش در نظر گرفته است؟
طراحی امنیت فناوری IBC بر اساس ۲ اصل استوار است؛ این ۲ اصل عبارتند از:
- کاربران باید امنیت شبکههایی را که با آنها در ارتباط هستند، بررسی کنند و در مورد آنها مطمئن شوند.
- مکانیزم جداسازی خطا (The Implementation of Fault Isolation) باعث میشود تا هرگونه آسیب احتمالی یا دیتاهای پرخطر از زنجیره اتصالات میانشبکهای تفکیک شود.
تکنولوژی IBC شامل چه تعاریفی نمیشود؟
- فناوری IBC یک پروتکل لایه کاربردی (Application-Layer Protocol) نیست؛ یعنی فقط مسئولیت انتقال داده، احزار هویت و قابلیت اطمینان را برعهده دارد.
- IBC یک پروتکل مبادله اتمی (Atomic-Swap Protocol) نیست. انتقال یک توکن با استفاده از لایه کاربردی پروتکل IBC انجام میشود.
- این تکنولوژی یک پروتکل اشتراکگذاری (Sharding Protocol) نیست. هیچ Single State Machine وجود ندارد که در بین بلاکچینها تقسیم شود؛ بلکه مجموعه مختلفی از ماشینهای حالت در شبکهها وجود دارند که بعضی از رابطهای مشترک را بهاشتراک میگذارند.
- تکنولوژی IBC، یک پروتکل مقیاسبندی لایه ۲ (Layer-Two Scaling Protocol) نیست. این تکنولوژی همه زنجیرههایی که در لایه یک وجود دارند را پیادهسازی میکند.
پروژههایی که با فناوری IBC ساخته شدهاند
در ادامه به لیست بلندبالایی از پروژهها اشاره میکنیم که در بستر فناوری IBC شکل گرفتهاند:
- شبکه کازماس (ATOM): هسته اقتصادی شبکه کازماس با عنوان Cosmos Hub نام دارد و با توجه به IBC، ارتباطات حیاتی و مهم را برای بلاکچین فراهم میکند.
- IRISnet: یک پلتفرم ارائهدهنده زیرساخت با برخورداری از پروتکل خدمات میانشبکهای (Interchain) است و برای ایجاد برنامههای کاربردی و قابل اعتماد ساخته شده.
- شبکه OSMO: در واقع Osmosis، یک صرافی DEX میانزنجیرهای است که کاربران میتوانند علاوه بر ایجاد نقدینگی، با استفاده از IBC به معامله انواع توکن مشغول شوند.
- شبکه Sentinel: یک شبکه بینالمللی و جهانی از اپلیکیشنهای کاربردی است که در فضای وب خصوصی و مقاوم در برابر فیلترینگ و سانسور شکل گرفته.
نکات پایانی در مورد اینترنت بلاکچینها
کیت نرمافزاری شبکه کازماس که با عنوان Cosmos SDK شناخته میشود، به بسیاری از شبکههای بلاکچین این امکان را میدهد تا با یکدیگر تعامل و همکاری داشته باشند. آخرین قطعه پازل Cosmos SDK، تکنولوژی IBC نام دارد که در سال ۲۰۲۱ راهاندازی شد و حالا بهعنوان اینترنت بلاکچینها شناخته میشود. نظر شما در مورد تکنولوژی IBC و پروژههایی که توسط آن راهاندازی شدهاند، چیست؟