زیلیکا (Zilliqa) نخسیتن بلاک چین عمومی میباشد که جهت اجرا و پیاده سازی شاردینگ (sharding) برنامه ریزی شده است و با افزایش اندازه بلاک چین، مقیاس پذیری خطی را فراهم میکند.
تا امروز مقیاس پذیری جهت فناوری های بلاک چین موجود، معضل بوده است. هم اکنون بیت کوین قادر نیست تمام تقاضاهای شبکه خود را پردازش نماید و کارمزد تراکنش ها نیز مطتبق با این مسئله رشد داشته است. همین وضعیت جهت اتریوم نیز صدق میکند. به شکلی که محدودسازی بازده آن به ازای مصرف گس فراوان جهت قراردادهای هوشمند خواهد بود. برای نمونه ، محبوبیت کریپتوکیتیز به شکل چشمگیری سرعت اتریوم را کمتر میکند و این مسئله بیانگر محدودیت این شبکه خواهد بود.
زیلیکا (Zilliqa) درمجموع شیوه دستیابی بلاک چین به اجماع را دچار تغییر میکند. راهکار شاردینگ زیلیکا با توجه به مقیاس شبکه، مقیاس پذیر خواهد شد. از لحاظ تئوری، در تعداد تراکنشی که زیلیکا قادر است در هر ثانیه پردازش کند محدودیتی وجود نخواهد داشت. از لحاظ عملی، مطابق با تعداد نودهای شبکه، زیلیکا قادر است ده ها یا صدها هزار تراکنش در ثانیه پردازش نماید.
زیلیکا علاوه بر این نوید پشتیبانی از قراردادهای هوشمند را میدهد. اجرای قرارداد هوشمند در زمینه شبکه شارد شده، چالش فنی اصلی جهت زیلیکا میباشد. طی این مطلب به رویکرد زیلیکا در مورد مقیاس پذیری تراکنش ها و قراردادهای هوشمند خواهیم پرداخت. علاوه بر این تیم زیلیکا و خط مشی آن ها را بایکدیگر بررسی میکنیم.
حل معضل مقیاس پذیری
بلاک چین معضل مقیاس پذیری دارد. هراندازه نود بیشتری در شبکه وجود داشته باشد، رسیدن به اجماع دشوار تر خواهد شد. جهت نشان دادن این مسئله بهتر است مقیاس پذیری اجماع را نظیر مردم در نظر بگیریم:
- با حضور گروه اندکی از دوستان نزدیک خود، تصمیم گیری ساده تر خواهد بود. امکان دارد همیشه با یکدیگر موافق نباشید ولی از نظرات یکدیگر خشنود خواهد بود.
- جهت گروه بزرگتری از مردم نظیر سالنی پر از افراد، قادر هستید از حضار بخواهید جهت سریعتر بیان کردن رای، دست های خود را بالا ببرند. ولی شمارش آرا دشوار تر خواهد شد و نمیتوان از صادقانه بودن آرا اطمینان داشت.
- با حضور گروه هزار یا میلیون نفری، به سیستم رای گیری بزرگتری تری نیاز خواهید داشت که انرژی مشافی لازم خواهد داشت. علاوه بر این قادر نیستید مطمئن باشید که افراد، صادقانه فعالیت میکنند و دستیابی به جواب پایانی نیز دشوار خواهد بود.
هرچند این تشبیه کاملا صحیح نیست، با این حال قادر هستید پیچیده تر شدن اجماع بر اساس عظیم تر شدن شبکه را متوجه گردید. سرعت و کیفیت اجماع و اندازه شبکه رابطه معکوس با یکدیگر خواهند داشت. با افزایش یکی از این دو مورد، دیگری کمتر خواهد شد.
دیگر راهکارها جهت حل مقیاس پذیری بلاک چین بر انتقال برخی از داده ها به خارج از زنجیره معطوف اند و یا به دنبال رشد اندازه و حجم بلاک میباشند که بر تراکنش های بیشتری اجماع فراهم میکند. این راهکارها امکان دارد به شکل موقت فعالیت کنند ولی مشکل مقیاس پذیری را به شکل اساسی حل نمیکنند.
جهت حل این معضل باید معماری کل سیستم را دچار ویرایش کنید چراکه سرعت اجماع و اندازه شبکه به شکل مستقیم با یکدیگر در ارتباط میباشند.
پاسخ زیلیکا به مشکل مقیاس پذیری
زیلیکا راهی جهت پردازش تراکنش های بیشتر با پیوستن نودهای بیشتر به شبکه پیدا کرده است. این راهکار شامل طراحی دوباره بلاک چین از آغاز است. مدل تازه زیلیکا پروتکل اجماع هیبرید یا ترکیبی را پیاده سازی خواهد کرد تا با پیوستن هر ۶۰۰ نود تازه به شبکه، بازده شبکه نیز بیشتر گردد.
از لحاظ تئوری با پیوستن هر ۶۰۰ نود، بازده زیلیکا با تقسیم فعالیت ها افزایش خواهد یافت . از لحاظ عملی، در صورتی که شبکه بسیار عظیم گردد (بیش از یک میلیون نود) معضلاتی در انتشار به وجود خواهد آمد. هر چند یک میلیون نود مقدار خیلی زیادی میباشد که رسیدن به آن تا حدودی غیر ممکن خواهد بود. در هنگام نگارش این مطلب ، بیت کوین تقریبا ۱۱ هزار نود عملیاتی در اخیتار داشته. اتریوم که عظیم ترین شبکه نودهای کامل میباشد تقریبا ۲۵ هزار نود در اختیار دارد.
شبکه های بیت کوین و اتریوم با ده ها هزار نود هنوزهم قادر هستند تنها ۳ الی ۱۵ تراکنش در ثانیه پردازش نمایند. در برابر، آزمایش های گذشته بر پایه شبکه آزمایش خصوصی یا همان تست نت (آزمایش مجازی AWS) بیان کرده است که بازده شبکه زیلیکا با حضور ۱,۸۰۰ نود، ۱,۲۱۸ تراکنش در ثانیه خواهد بود. با افزایش مقدار نودها به ۳,۶۰۰ نود، مقیاس پذیری شبکه زیلیکا تا ۲,۴۸۸ تراکنش در ثانیه افزایش خواهد داشت.
شاردینگ: تقسیم کار در سراسر شبکه
زیلیکا چطور به این مقیاس پذیری دست مییابد؟
زیلیکا از راهکاری به نام شاردینگ استفاده خواهد کرد. پروتکل زیلیکا (Zilliqa) تعداد نودهای استخراج کننده در شبکه را به گروه های ۶۰۰ تایی تقسیم خواهد کرد. به هر گروه یک شارد میگویند. برای نمونه، در شبکه آزمایشی که ذکر کردیم، با حضور ۱,۸۰۰ نود، شبکه آزمایشی خود را به ۳ شارد تقسیم نمود. با حضور ۳,۶۰۰ نود، ۶ شارد وجود داشت. با افزایش نودهای شبکه، زیلیکا قادر است شاردهای بیشتری ایجاد نماید.
هر شارد قسمتی از تراکنش های شبکه را پردازش میکنند. به صورت ساده تر میتوان گفت اگر ۶ شارد وجود داشته باشد، هر شارد تقریبا یک ششم تراکنش های شبکه را پردازش میکند. هرچه شارد بیشتری وجود داشته باشد، شبکه بار اجماع را به شاردهای بیشتری تقسیم میکند و تقاضای محاسباتی را تقریبا پایدار و با ثبات نگه میدارد.
هر شارد، تراکنش مربوط به خود را در میکروبلاک و در موازات شاردهای دیگر پردازش خواهد کرد. در انتهای دوره پردازش موازی که به آن DS epoch میگویند، این میکروبلاک ها ترکیب گردیده و به بلاک کامل تبدیل خواهند شد و سپس به بلاک چین اضافه میگردند.
کمیته DS: مدیریت شاردها
جهت هر DS epoch چندین نود به شکل تصادفی انتخاب میگردند تا شاردهای متنوع را مدیریت نمایند. این کمیته مدیریت که به آن کمیته DS میگویند، شبکه را کنترل و هدایت میکند. این کمیته تصمیم میگیرد که کدام نودها به کدام شارد اختصاص یابند. هنگامی که درخواست تراکنش جدید ارائه میشود، کمیته DS پردازش آن ها را به عهده شاردها میگذارد. کمیته DS در پایان DS epoch، بلاک کامل را از میکروبلاک های ایجاد شده توسط شاردها جمع آوری میکند.
اجماع نهایی: PoW + BFT
زیلیکا از مکانیزم اجماع هیبرید و ترکیبی بهره میبرد. زمانی که برای بار نسخت ماینینگ را آغاز میکنید، باید هش گواه اثبات کار (PoW) را کامل نمایید. گواه اثبات کار به توان رایانشی و محاسباتی نیاز خواهد داشت که تضمین کند یک دستگاه تنها قادر است یک نود را کنترل نماید . به این صورت PoW به زیلیکا در ساخت هویت کمک خواهد کرد. ساخت چندین هویت به جهت تسلط به شبکه یا همان حمله سیبل را جهت عاملان سودجو و نامناسب دشوار میسازد. هرچند این شبکه از گواه اثبات کار جهت اجماع بهره نمیبرد.
بعد از آنکه نود هویت خود را تایید نمود، به یک شارد اختصاص مییابد. در شاردها، زیلیکا (Zilliqa) از اجماع تحمل خطای بیزانس استفاده میکند. این اجماع بازدهی بیشتر و نتیجه نهایی دارد. نتیجه نهایی بدان معناست که اکثر نودهای شارد باید در مینی بلاک موافق باشند. پس از تایید بلاک توسط شاردها و کمیته DS، بلاک تایید شده تنها بلاکی است که میتواند به بلاک قبل از خود ارجاع داده شود. در مکانیزم اجماع با نتیجه نهایی، هیچگونه فورکی وجود ندارد.
زیلیکا نخستین دفتر کل توزیع شده ای نمیباشد از BFT بهره میبرد. هایپر لجر (Hyperledger)، تندرمینت (Tendermint) و نئو (NEO) هم از نسخه های متنوع مکانیزم اجماع BFT بهره میبرند.
قراردادهای جریان اطلاعات
تراکنش های شاردینگ تقریبا مستقیم و فاقد پیچیدگی خواهدن بود. قادر هستید به سهولت تاییدیه های تراکنش را به شاردهای متنوع اختصاص دهید. هر تاییدیه مستقل از دیگر تاییدیه ها خواهد بود. نیازی به ارتباط میان شاردها وجود نخواهد داشت.
این وضعیت برای اجرای قراردادهای هوشمند و برنامه های غیرمتمرکز در فضای بلاک چین شارد شده صادق نخواهد بود. مشکل اینجا خواهد بود که قراردادهای هوشمند معمولا بر بررسی دیگر شرایط، متغیرها و توابع وابسته هستند. انجام این فعالیت مستلزم وجود ارتباطات بسیار فراوان بین شاردها خواهد بود. این رفت و آمد پیام ها به پهنای باند و توان محاسباتی نیاز خواهد داشت که مزیت های شاردینگ را از بین خواهد رفت.
در پایان، قراردادهای زیلیکا (Zilliqa) بر جریان داده ها و برنامه نویسی کاربردی متمرکز میباشد. این قراردادها، بررسی، ذخیره یا تغییر وضعیت را امکان پذیر نخواهند کرد. این اجماع نشان میدهد طرح شاردینگ ثابتی وجود نخواهد داشت که ایمن و منسب باشد. چنانچه اجازه دهید که قراردادها به شکل مجزا در وضعیت شارد شده متنوع اجرا گردند، احتمال هر نوع حمله یا ارتباطات بیشتر از حد میان شاردی وجود خواهد داشت.
اتریوم نیز هم اکنون بر روی راهکار شاردینگ فعالیت میکند. هرچند معلوم نیست که توسعه این برنامه تا کجا پیش برود است. با این وجود، زیلیکا هنوزهم قادر است جهت برنامه های غیرمتمرکزی که نیاز به بازدهی بالا خواهند داشت مورد استفاده قرار بگیرد. هر برنامه غیرمتمرکزی که به نرخ تراکنش بیشتری در مقایسه با بلاک چین کنونی خود نیاز دارد قادر است زیلیکا را به عنوان خانه خود انتخاب کنند.
زبان نوین برنامه نویسی
به جهت استاندارد سازی و ایمنی هرچه مضاعف برنامه نویسی کاربردی، تیم زیلیکا زبان برنامه نویسی نوینی با اسم اسکالا (Scilla) عرضه کرده است.
اسکالا وضعیت و کاربرد را تفکیک میکند. این زبان، یک زبان برنامه نویسی کاربردی است که تمایزی بین جنبه های ارتباطی یک قرارداد، نظیر انتقال سرمایه یا فراخوانی قرارداد دیگر، و اقدامات محاسباتی قرارداد قائل میشود
این زبان نوین صرفا تورینگ (Turing) نخواهد بود. این به این معناست، از برنامه هایی که نیاز به نوع بخصوصی از چرخه ها یا بیانیه های مشروط دارند پشتیبانی نخاوهد کرد. این مسئله جهت اهداف امنیتی از اهمیت زیادی برخوردار است. اثبات قراردادها موجب میگردد کاربران بدانند که قراردادها به شیوه تایید هویت، ایمن خواهند بود.
اسکالا (Scilla) بین قراردادهای کاربردی که زیلیکا از آن ها پشتیبانی دارد و قراردادهای وابسته به وضعیت که در حال حاضر زیلیکا از آن ها پشتیبانی نمیکند تمایزبوجود میاورد.
توکن زیلیکا (ZIL)
زیلیکا جهت اکوسیستم خود یک توکن مخصوص در اختیار دارد. نظیر دیگر پلتفرم های برنامه غیرمتمرکز مانند اتریوم یا نئو، توکن زیلیکا (ZIL) هم به عنوان مشوق و جایزه ماینینگ، گس مورد نظر جهت انجام قراردادها و هزینه تراکنش ها مورد بهره قرار میگیرد.چ
توکن زیلیکا (ZIL)، توکن ERC-20 بر پایه بلاک چین اتریوم است زیرا شبکه اصلی و عمومی زیلیکا هنوز فراهم نشده. لذا از عرضه شبکه اصلی، توکن ERC-20 به توکن های اصلی زیلیکا تبدیل میگردد.
در پایان سال ۲۰۱۷، زیلیکا ۱۲ میلیون دلار به شکل اتر در جذب سرمایه خصوصی کسب کند. بعد از جذب سرمایه خصوصی، بالا رفتن قیمت اتر سبب این شد که ۱۲ میلیون دلار به ۲۰ میلیون دلار تغییر کند.
با دست یافتن به این رقم، زیلیکا به جامعه خود اظهار کرد که دیگر به فروش عمومی نیازی نخواهد بود. هرچند به سبب علاقه عمومی، زیلیکا در ژانویه ۲۰۱۸ مقدار ۴,۴۴۵ اتر به فروش عمومی اضافه کرد.
توکن زیلیکا (ZIL)اکنون در صرافی های هیوبی (Huobi)، اتردلتا و gate.io و آی دکس (Idex) وجود خواهد داشت.
تیم زیلیکا
تیم زیلیکا متخصصان و دکترهای علوم رایانه هستند.
ژینشو دانگ (Xinshu Dong) مدیرعامل زیلیکا فارغ التحصیل دوره دکترای علوم رایانه از دانشگاه ملی سنگاپور میباشد. او متخصص امنیت فضای مجازی و مسئول چندین پروژه امنیت ملی سنگاپور بوده. تحقیقات وی در کنفرانس ها و نشریات معتبر عرضه شده است.
پراتیک ساکسنا (Prateek Saxena) مشاور ارشد علمی زیلیکا است. وی دارای مدرک دکترا در علوم رایانه از دانشگاه کالیفرنیا میباشد. او اکنون پروفسور و استاد علوم رایانه دانشگاه ملی سنگاپور است.
آمریت کومار (Amrit Kumar) سرپرست پروژه کریپتو میباشد . او عضو تیم تحقیقاتی دانشگاه ملی سنگاپور است. کومار فارغ التحصیل دوره دکترا از دانشگاه گرنوبل فرانسه میباشد و دارای دیپلم مهندسی از دانشگاه پلی تکنیک اکول فرانسه بوده.
هیئت مشاوره زیلیکا شامل اشخاص برجسته حوزه بلاکچین هستند که عبارت است از: لوی لو موسس شبکه کایبر (Kyber). وینسنت ژو بنیانگذار شرکت کپیتال FBG. نیکولای اوستر از شرکت AG. الکساندر لیپتون موسس و مدیرعامل استرانگ هولد لبز (StrongHold Labs).
نتیجه گیری
مقیاس پذیری هنوزهم مشکلی جهت فناوری های دفترکل توزیع گردیده و بلاک چین خواهد بود. زیلیکا پروژه مهمی میباشد که به موضوعات مقیاس پذیری مشغول است. این پلتفرم قادر سات توسعه مهمی در زمینه بلاک چین باشد. به شکل گسترده تر میتوان انتظار داشت که پیشرفت های متن باز زیلیکا در فناوری شاردینگ جهت دیگر پروژه های بلاک چین در سال های آینده مورد بهره قرار بگیرد.