آشنایی با تمام الگوریتم‌های اجماع در ارزهای دیجیتال

تا به امروز هر چه از ارز‌های دیجیتال موفق شنیده‌اید ، بر اساس یک الگوریتم اجماع فوق العاده پیش می‌رود. همان طور که این الگوریتم‌های اجماع بسیار فوق العاده هستند ولی مشکلاتی هم دارند و هیچ یک بدون عیب و اشکال نیستند. این الگوریتم‌ها برای مشکلاتی نظیر حملات سایبری و.... به وجود امده‌اند. در ادامه به محبوب‌ترین این الگوریتم‌ها که تا به امروز مورد استفاده قرار گرفته را مورد برسی قرار میدهیم. اثبات کار (Proof-of-Work) – اولین مکانیزم اجماعمحبوبترین ارزهای دیجیتای که از الگوریتم اثبات کار استفاده می‌کنند: بیت کوین، اتریوم، لایت کوین، دوج کوین و بسیاری دیگر…مزایا: تنها مزیت این مکانیزم این است،که می‌دانید جواب می‌دهد. معایب: این مکانیزم عملکردی بسیار کند، و برای محیط زیست و زمین خطرناک است، و الودگی‌هایی در طبیعت به همراه دارد.الگوریتم اثبات کاراین مکانیزم یعنی مکانیزم اثبات کار اولین الگوریتم اجماعی بود که بلاک چین از آن استفاده کرد. این الگوریتم برای بلاک چین بیت کوین توسط ساتوشی ناکاموتو به کار گرفته شد. به کار گرفتن این مکانیزم، باعث شد عملیات استخراج رشد بسیار خوبی کند، ولی از سوی دیگر ایت مکانیزم باعث مصرف انرژی بسیار زیادی در سرتاسر جهان شد. همه مدانیم که تنها مزیت این مکانیزم این بود که می‌دانستیم جواب می‌دهد، این که این مکانیزم جواب می‌دهد را می‌توان برای اکثرا الگوریتم‌های دیگر نیز به کار برد. اما امروزه با توجهه به تمام مثال و مشکلات باید کم‌کم به این فکر کرد که این الگوریتم را در موزه بگذاریم. اکثر ارز‌های دیجیتال مانند اتریوم، و خیلی دیگر به به دنبال این هستند که الگوریتم اجماع اثبات کار را کنار گذاشته و به سمت الگوریتم اثبات سهام بروند. با این کار در صرفه جویی انرژی کمک بسیاری می‌کند.در الگوریتم اثبات کار،شما دستگاه‌های ماینر خود را برای حل مسائل سخت و بی‌فایده به کار می‌گیرید، تا بلاک‌های جدیدی را به شبکه اضافه کنید. سیستم اثبات کار به این گونه کار می‌کند که «طولانی ترین زنجیره موجود برنده می‌شود» و با در نظر گرفتن اینکه بیشتر ماینر‌ها بر روی زنجیره‌های مشابه کار می‌کنند، آن زنجیره تا زمانی که 50% شبکه را ماینر‌های صادقی تشکیل داده باشند، آن زنجیره سریع‌ترین، طولانی‌ترین، مورد اعتماد‌ترین و امن‌ترین شبکه می‌باشد.اثبات سهام (Proof-of-Stake) – کودک تازه چشم گشوده در دنیای بلاک‌هامحبوب ترین ارز‌های دیجیتال که از این الگوریتم استفاده می‌کنند:دِکرد،اتریوم ،پیرکوین مزایا:حمله به این شبکه بسیار هزینه بر است، غیر متمرکز‌تر، این الگو از نظر مصرف انرژی بسیار دچار تغییراتی نسبت به روش‌های پر مصرف بهینه‌تر شده. معایب: مشکل Nothing at Stakeدر این الگوریتم متخصصان با استفاده از توکن‌های خود به بلاک اعتبار می‌دهند. ولی اگر بلاکی ساخته شود آن بلاک از این کار ساخته نشده ، بلکه بلاک جدید با استفاده از دستگاه‌های ماینر و از حل مسائل ساخته می‌شوند. در این مکانیزم در صورتی که فورک به وجود بیاید،افراد توکن‌های خود را بر آن فورکی که قصد حمایت از آن را دارند قرار می دهند، با توجه به اینکه افراد بیشتری به فورک صحیح رأی داده‌اند، افرادی که توکن‌های خود را برای حمایت از یک فورک دیگر بسته‌اند، توکن‌های خود را از دست می‌دهند. اصلی‌ترین و یا تنها‌ترین مشکل در الگوریتم اثبات سهام وجود دارد، تئوری nothing at stake است. نگرانی از انجایی شروع می‌شود که تاییدکنندگان بلاک‌ها همانند اگوریتم اثبات کار ، نیاز بسیار زیادی به توان پردازشی در فورک‌های مختلف ندارد، کسانی که در این الگوریتم‌ها هستند می‌توانند بدون هیچ نگرانی و مشکلی به هر فورک ایجاد شده بدون نگرانی رأی دهند. به خاطر همین دلیل است که ایجاد فورک در بلاک چین‌ ها با اثبات سهام کار می‌کنند. این سازوکار باعث می‌شود نسبت به بلاک چین‌ های اثبات کار کاری معمول‌تر و رایج‌تر باشد. اما از سوی دیگر این کار می‌تواند امنیت و اعتبار شبکه‌هایی که با این الگوریتم کار می‌کنند را زیر سوال ببرند. اثبات سهام نمایندگی شده (Delegated Proof-of-Stake) – انتخاب تاییدکنندگان با رای‌گیریمحبوبترین ارز‌های دیجیتال که از این الگوریتم استفاده می‌کنند: استیمیت (Steemit)، ایاس (EOS)، بیت‌شیرز (BitShares)مزایا: نسبت به تمام الگوریتم‌ها تراکنش‌ در آن ارزان‌تر است، این الگوریتم مقیاس پذیر نیز است و از نظر اسیب به محیط زیست و مصرف انرژی بهینه نیز شده استمعایب:این الگوریتم تا حدودی متمرکز است. این الگوریتم حاصل تلاش و فکر دنیل لاریمر(Daniel Larimer) است، این الگوریتم با الگوریتم اثبات کار زمین تا آسمان تفاوت دارد. در مکانیزم DPOS، دیگر مانند الگوریتم اثبات سهام دیگر در باره معتبر بودن بلاک‌ها رأی نمی‌دهند، در این سازوکار نمایندگانی (delegate) را از طریق رأی گیری بر می‌گزینند تا انجام اعتبار سنجی بلاک‌ها را این نماینده‌ها انجام می‌دهند. این کار را معمولا بین 21 تا 100 نماینده در مکانیزم DPOSانتخاب می‌شوند انجام می‌پذیرد. این نمایندگان در این شبکه به صورت دوره تعویض می‌شوند، و چیزی که انها را مستلزم به تحویل دادن بلاک‌ها می‌کند پروتکل‌هایی است که وضع شده‌اند. اینکه بلاک‌ها به طور منظم و سازماندهی شده انتشار میابند به دلیل تعداد کم نمایندگان است. هر نماینده می‌تواند زمان کافی برای انتشار هر بلاک را تعیین کند، اگر در انتشار بلاک‌ها وقفه یا نمایندگان به طور منظم انها را انتشار ندهند و چناچه تراکنش‌های نامعتبر را تأیید کنند، دارندگان توکن با رأی گیری در شبکه می‌توانند به خارج شدن آن رأی دهند و فرد که صلاحیت بهتری داشته باشد را جایگزین کنند. در سازوکار و الگوریتم DPOS دیگر رقابتی همانند رقابت در اثبات کار و اثبات سهام بود دیده نمی‌شود. در این سازوکار برای ایجاد بلاک با یکدیگر همکاری می‌کنند. چیزی که باعث می‌شود عملکرد این الگوریتم نسبت به دیگر الگوریتم‌های اجماع سریع‌تر باشد، متمرکز سازی جزئی در ایجاد بلاک‌ها است. اثبات اعتبار (Proof-of-Authority) – اعتماد، تمام آنچه نیاز داریدمحبوبترین ارز‌های دیجیتالی که از این الگوریتم استفاده می‌کنند: POA.Network ، شبکه آزمایشی کووان اتریوم (Ethereum Kovan)مزایا: بهروری بسیار بالا نسبت به بقیه الگوریتم‌ها، مقیاس پذیریمعایب: متمرکز نبودن سیستم‌هااثبات اعتبار، در ای الگوریتم اجماع توسط حساب‌های معتبر و تایید شده تراکنش‌ها را اعتبار سنجی می‌کند. این سیستم همانند ادمین‌های معمولی کار می‌کنند، اعضای این شبکه‌ها به افراد اعتماد کامل دارند و انتظار می‌رود که این افراد حرکاتی صحیح و درست از خود به نمایش بگذارند. الگوریتم POA چون برای شبکه‌های خصوصی بهینه سازی شده است در خروجی بسیار موفق ظاهر می‌شود. ولی بنظر بعید می‌رسد این مکانیزم را به خاطر متمرکز بودنش در بلاک چین‌ های عمومی یافت کنید. اثبات وزنی (Proof-of-Weight) – هرچه سنگین‌تر، بهترمحبوبترین ارزهای دیجیتای که از این الگوریتم استفاده می‌کنند: آلگورند (Algorand)، فایل‌کوین (Filecoin)، چیا (Chia)مزایا: قابل تنظیم بودن این مکانیزم، مقیاس پذیریمعایب:چالش انگیز بودن مکانیزیماثبات وزنی، در این سازوکار اطلاعات و طبقه بندی بسیار زیادی از الگوریتم‌های اجماع دیگر کار می‌کند.این الگوریتم براساس جمعی الگرزند برنامه ریزی و پایه گذاری شده است. در این الگوریتم با توجه به میزان اثبات سهام شما درصد مالکیت شما را از تمامی توکن‌های شبکه نشان می‌دهد. تعداد و درصد توکن‌های شما نشان شانش شماست یعنی بر هر میزان که توکن داشته باشید به همان میزان احتمال اینکه بلاکی را کشف کنید نیز بالا می‌رود. در این سیستم برامتر وزنی دیگری نیز مورد استفاده قرار می‌گیرد برای مثال در مکانیزم فضا_زمان (proof_of_spacetime)هر انچه قدر که اطلاعات در IPFSدخیره کرده‌اید مورد سنجش قرار می‌گیرد و به همان مقدار در شبکه اعتبار خواهی داشت. بعضی دیگر از این سیستم‌ها با پارامتر‌های دیگری نیز کار می‌کنند مانند اثبات شهرت(proof_of_reputation) پارامتر‌های دیگری را مد نظر قرار می‌دهد. تحمل خطای بیزانس (Byzantine Fault Tolerance) – سلطه‌جویی بر بلاک چین!محبوبترین ارزهای دیجیتای که از این الگوریتم استفاده می‌کنند: هایپرلجر (Hyperledger)، استلار (Stellar)، دیس‌پچ (Dispatch)، ریپل (Ripple)مزایا:خروجی بسیار بالا، هزینه و مخارج بسیار ارزان،مقیاس پذیری.معایب:اعتماد نصف و نیمه به آنمسئله قدیمی به نام «مسئله فرمانده بیزانس» در رابطه با یارانش نقل شده است دارد. این مسئله از جایی آغاز می‌شود که چندین فرمانده بیزانس و ارتش مربوط به هرکدام از آن‌ها یک شهر را محاصره کرده‌اند. آن‌ها باید به‌صورت متحد درباره زمان انجام حمله تصمیم‌گیری کنند و در یک زمان مشخص به شهر حمله کنند . اگر فرماندهان به صورت نامنظم و نا‌هماهنگ به شهر حمله می‌کردند جنگ را به‌طرف مقابل واگذار می‌کنند. در این فاصله طولانی این فرماندهان نیاز به ارتباط با یکدیگر دارند ، برای این ارتباط نیاز به ارسال پیام به یکدیگر دارند. در ارز‌های دیجیتال نیاز این زیرساخت به وجود امده است تا با به کارگیری پروتکل‌های BFT بر مشکلات دستیابی به اجماع خاتمه دهند. و البته هرکدام از آن‌ها مزایا و معایب خاص خود را دارد:تحمل خطای بیزانس کاربردی (Practical Byzantine Fault Tolerance) یا PBFTیکی از اولین راه‌کار‌هایی که برای این مشکل ارائه شد، پروتکل PBFT بود. این مکانیزم هم‌اکنون در هایپرلجر فابریک، توسط فرماندهان که از پیش تعیین شده‌اند، با بهره‌وری چشمگیری در حال اجر و انجام است.مزایا: تعداد تراکنش‌های بسیاربالامعایب: متمرکز و مجازتوافقنامه بیزانس متعهد شده (Federated Byzantine Agreement): این الگوریتم یکی دیگر از کار‌هایی بود که به کمک فرمانده‌هان بیزانس کمک کرد. به عنوان مثال ارز‌های استلار و ریپل از این استراتژی کمک می‌گیرند. خلاصه و اصل مطلب این مسئله این است که هر فرمانده به طور متمرکز و جدا مسئول زنجیره خود باشد و برای جلب اعتماد سربازانش هر پیامی را که دریافت کرد به همان گونه به سربازانش برساند. این کار برای اثبات حقیقت به کار می‌رود. این فرماندهان (تاییدکنندگان) در ریپل، توسط این موسسه از پیش انتخاب‌شده‌اند. اما در استلار هرکسی قابلیت این را دارد که تأییدکننده (Validator) باشد و شما هستید که در نهایت فرد مورد اعتماد خود را انتخاب می‌کنید.با توجه به اینکه خروجی بسیار بالایی دارد این شبکه و کامزد بسیار پایین‌تری نسبت به بقیه شبکه‌ها دارد، و از سویی دیگر مقیاس پذیری خوبی هم دارد از نطر برخی‌ها FBA از بهترین الگوریتم‌های جمعی در بین مکانیزم اجماع محسوب می‌شود.گراف جهت‌دار غیرمدور (DAGs) – معروف به قاتل بلاک چین!محبوبترین پیاده‌سازی‌های انجام‌شده: آیوتا (IOTA)، هش‌گراف (Hashgraph)، نانو یا ریل‌بلاک سابق (Nano)مزایا: مقیاس‌پذیری شبکه، کارمزد پایینمعایب: وابسته به نوع پیاده‌سازیدفاتر کل توزیع‌شده دگ در حال حاضر از پروفایل تیندر ویتالیک بوترین نیز خیره کننده تر به نطر می‌رسند! در الگوریتم‌های اجماع دگ،در این سازوکار دیگر بلاک‌های چینی در کار نیستند و تراکنش‌ها به صورت غیر همزمان هدایت می‌شوند. مزیت که این شبکه را منحصر به فرد می‌دارد این است که در این شبکه می‌توان تراکنش‌هایی بی نهایت در کسری از ثانیه انجام داد؛ اما الگوریتم‌های اجماع دگ‌ها نیز مانند دیگر مکانیزم‌های اجماع، نقاط قوت و ضعف خود را دارد.تنگل (Tangle)از این الگوریتم اجماع در ارز دیجیتال آیوتا استفاده شده است. برای اینکه بتوانید تراکنشی در شبکه آیوتا انجام دهید باید دو تراکنش قبلی خود را تایید بنمایید. یعنی به خاطر یک تراکنش دو تراکنش را تایید می‌کنید عملا با این کار سود شما به دیگران نیز می‌رسد و در واقع اجماع میکنید. به دلیل اینکه این شبکه به اجماع می‌رسد کسی که بتواند بیش از یک سوم تراکنش‌های این شبکه را انجام دهد دیگران را مجبور به تایید تراکنش‌های نامعتبر خود می‌نمایید. ولی تا زمانی که حجم تراکنش‌های انجام‌شده مقدار قابل‌توجهی باشد، امکان ایجاد یک سوم تراکنش‌ها در شبکه از جانب کسی غیر‌ممکن خواهد بود.هم اکنوون آیوتا به بررسی دوباره تراکنش‌ها در نود متمرکزی روی اورده است ، به این نود کمکی «هماهنگ‌کننده(The Coordinator) می‌گویند . طبق گفته توسعه دهندگان آیوتا ، این کار تا اتمام مراحل ابتدایی آیوتا انجام خواهد شد و پس از پیاده سازی کامل تنگل از شبکه حذف خواهد شد.هش‌گراف این الگوریتم توسط لیمون بیرد(lemon baird) ساخته شد و به سرعت گسترش یافت. این الگوریتم یک پروتکل اجماع که بر پایه سخن چینی است اجرا می‌شود.در این الگوریتم نود‌ها تراکنش به صورت اتفاقی به اشتراک می‌گذارند تا اینکه تمامی تراکنش‌ها بین نود‌ها پخش شود. هش‌گراف از سرعت بسیار بالایی در انجام تراکنش‌ها برخوردار است.گاهی بیش از ۲۵۰ هزار تراکنش در ثانیه انجام می‌دهد. اما از سویی دیگر در مقابل حملات Sybil آسیب‌پذیر نشان داده است. با این تعاریف این مکانیزم برای شبکه‌های خصوصی گزینه بسیار مناسبی است. بلاک-لتیس (Block-lattice) ربلاک_لتیس الگوریتمی است که ارز دیجیتال نانو بر روی آن اجرا می‌شود. بلاک_ لتیس ترکیبی از بلاک چین ودگ است. بلاک_ لتیس به گونه‌ایی مار می‌کند که هر کاربر آدرس کیف پول بلاک چین مخصوص به خود را دارد که تنها خود آن فرد می‌تواند به آن دسترسی داشته باشد. تمامی کاربران در این الگوریتم یک کپی از زنجیره یکدیگر را در اختیار دارند. در هر تراکنش از دو مشخصه اطلاعات دریافت می‌کند یکی از بلاک ارسال کننده و دیگری از بلاک دریافت کننده. به نظر سازوکار این شبکه بسیار ساده باشد ولی در دنیای واقعیی امروزی راه‌هایی برای صدمه زدن پیدا می‌شود. این ساختار بلاک-لتیس در تراکنش‌های کوچک بسیار آسیب پذیر نشان داده است. در این حملات، مقدار بسیار کمی به کیف پول‌های ارسال می‌شود و پس از ارسال کیف پول خالی می‌شود. اسپکتر (SPECTRE) تسلسلی از رخدادهای اثبات کار: این روش برای مقیاس پذیری بیت کوین با انجام تراکنشات به صورت برگشت پذیر (Recursive Elections) و با کمک الگوریتم اثبات کار و دگ به توافق جمعی مقیاس پذیری استفاده می‌شود. در اسپکتر بعد از استخراج یک بلاک به جای اینکه بلاک استخراج شده یک والد داشته باشد و والد بلاک آن را مدیریت کند به هر بلاک چندین والدین (parent) می‌دهد، تا در زمان کمتری بلاک‌های بیشتری مورد برسی و مدیریت قرار گیرد. هر بلاک استخراج شده در اسپکتر اعتبار والدین خود را افزایش می‌دهد. در فلسفه اثبات کار این قانون نوشته شده است که هر زنجیره‌ایی که طولانی تر باشد پیروز است ، در اسپکتر نیز بلاکی که بیشترین بلاک فرزند را دارا باشد، برنده خواهد بود. اسپکتر در پروژه‌ای واقعی بکار گرفته نشده و آسیب پذیری آن در برابر حملات و مشکلات به طور تمام و کمال مورد برسی قرار نگرفته است،اما به نظر می‌رسد که می‌تواند مشکلات بیت کوین را به اتمام برساند.مرجع: cryptonews