اثبات اعتماد (Proof of Trust) ناشناختهترین نوع الگوریتمهای اجماع در بلاکچین و سیستمهای غیرمتمرکز است که کمتر درباره آن صحبت شده است و احتمالا شما هم چیز زیادی درباره آن نشنیده باشید. در این مقاله قصد داریم درباره این الگوریتم اجماع و راه حل آن برای حل مشکل مقیاس پذیری و اجماع در بلاکچین و سیستم های غیر متمرکز صحبت کنیم.
در ابتدای این مقاله به صورت مختصر درباره الگوریتم اجماع و لزوم وجود آن در سیستم های غیرمتمرکزی همچون بلاک چین صحبت میکنیم و سپس به توضیح الگوریتم های رایج قدیمی همچون اثبات کار (PoW)، اثبات سهام (PoS) و اثبات سهام نیابتی (DPoS) خواهیم پرداخت.
هدف از توضیح الگوریتمهای قدیمی این است که ضمن آشنایی با آنها، متوجه شوید که کارکرد واقعی الگوریتم اجماع اثبات اعتماد چیست؟ همچنین توضیح میدهیم راه حل الگوریتم جدید برای حل مشکل الگوریتمهای اجماع قدیمی چیست. اگر به مباحث بنیادی بلاکچین و ارزهای دیجیتال علاقهمند هستید، توصیه میکنیم که حتما تا انتهای این مقاله با داموندمگ همراه باشید.
الگوریتم اجماع یا Consensus Algorithm چیست؟
همانطور که میدانید سیستمهای غیرمتمرکز همچون بیت کوین و اتریوم، هسته مرکزی ندارند و هیچگونه سازمان مرکزی بر چگونگی کار شبکه و تایید تراکنشها نظارت نمیکند. برای کسانی که اولین بار با مفهوم شبکه های غیرمتمرکز آشنا میشوند، این موضوع کمی مبهم است و سوال بیشتر افراد این است که امنیت بلاکچینها چگونه تامین میشود؟ چه چیزی این شبکهها را از حمله، تقلب و سو استفاده حفاظت میکند و چه کسی بر صحیح بودن تراکنشهای بلاک چین نظارت دارد؟
در یک سیستم متمرکز این وظایف بر عهده یک نهاد مرکزی است که به عنوان واسطه بین کاربران مختلف قرار میگیرد. به عنوان مثال اگر بخواهید در یک سیستم متمرکز، مقداری پول به شخص دیگری انتقال دهید، بانک واسطه شما و شخص دوم خواهد بود. در واقع شما و شخص دوم به بانک اعتماد کردهاید تا کار انتقال پول را برای شما انجام دهد و امنیت حسابهای خود را به بانک سپردهاید.
در بلاک چینها و شبکههای غیرمتمرکز تمام کاربران یک کپی از دفتر کل شبکه را در اختیار دارند. این دفتر کل شامل سابقه تمام تراکنشهای انجام شده در شبکه است. تمام کاربران میتوانند تحت عنوان نود (Node) در شبکه فعالیت داشته باشند و تراکنشهای بلاکچین را اعتبارسنجی کنند. نودها در ازای کار کردن برای شبکه پاداش میگیرند، بنابراین همواره انگیزهای برای کاربران وجود دارد که به عنوان اعتبارسنج در شبکههای غیرمتمرکز فعالیت داشته باشند.
اما اگر هر کسی میتواند به عنوان نود فعالیت کند، امنیت بلاکچینها چگونه تامین میشود؟ چه مکانیزمی باعث میشود که نودهای شبکه تقلب نکنند و کار خود را درست انجام دهند؟ این کار به وسیله الگوریتم های اجماع انجام میشود. در یک شبکه غیرمتمرکز، تایید اعتبار یک تراکنش فقط توسط یک نود انجام نمیشود و باید تعدادی از نودها بر سر اعتبار یا عدم اعتبار آن تراکنش به توافق یا اجماع برسند. ایجاد توافق میان نودها یا به اصطلاح بهتر اجماع میان نودهای بلاکچین، توسط مکانیزمی به نام الگوریتم اجماع انجام میشود.
نودهای گوناگون یک شبکه غیرمتمرکز در سراسر جهان پراکنده شدهاند و به وسیله الگوریتم اجماع درباره درست یا نادرست بودن یک تراکنش به توافق میرسند. این توافق دسته جمعی باعث حفظ امنیت تراکنشها در شبکه غیرمتمرکز حفظ میشود و شبکه بدون مشکل به کار خود ادامه خواهد داد.
رایج ترین الگوریتم های اجماع در بلاکچین
در بخش قبلی، دلیل وجود الگوریتم اجماع در شبکههای غیرمتمرکز را توضیح دادیم. برای آنکه نودها شبکههای غیرمتمرکز به اجماع برسند، الگوریتمهای گوناگونی ساخته شده است و در سیستمهای مختلف از آنها استفاده میشود.
هر کدام از آنها مزایا، معایب و کاربردهای خاص خود را دارند، ولی هدف همه آنها ایجاد یک سیستم کاملا غیرمتمرکز، ایمن، پایدار، پرسرعت و مقیاس پذیر است. در این بخش چند الگوریتم رایج را به صورت خلاصه معرفی خواهیم کرد و سپس به توضیح نوآوری اجماع اثبات اعتماد خواهیم پرداخت.
اثبات کار (PoW)
اثبات کار، اولین الگوریتم اجماع به کار رفته در سیستمهای غیرمتمرکز است و از رایجترین آنها به شمار میرود. اثبات کار، الگوریتم اجماع شبکه بیتکوین است و به همین دلیل امتحان خود را به عنوان یک الگوریتم اجماع کارآمد و مطمئن پس داده است.
در اثبات کار، نودهای شبکه به منظور اعتبارسنجی تراکنشها باید جواب معادلات ریاضی پیچیدهای را حدس بزنند. این کار استخراج نام دارد و به وسیله ماشینهای پردازشگر قدرتمندی به نام ماینر انجام میشود. نودهای یک شبکه اثبات کار، برای اعتبارسنجی تراکنشها برق زیادی مصرف میکنند و به زمان زیادی برای پردازش نیاز دارند.
همین مساله انتقادهای زیادی به الگوریتم اثبات کار وارد کرده است. اجماع با این روش، انرژی زیادی مصرف میکند. همچنین افراد با استفاده از کامپیوترهای معمولی، نمیتوانند موفق به اعتبارسنجی در شبکه شوند. برای تبدیل شدن به یک استخراج کننده در شبکه اثبات کار، باید تعداد زیادی دستگاه قوی و گران قیمت ماینر نیاز است.
اتلاف انرژی و در دسترس نبودن اعتبارسنجی شبکه برای همه افراد، از نقاط ضعف اثبات کار به حساب میآید و بلاکچینهای بعد از بیتکوین، تلاش کردند تا این مشکلات را با ایجاد یک الگوریتم اجماع جدید برطرف کنند. بنابراین الگوریتم اثبات سهام ایجاد شد.
اثبات سهام (PoS)
در اثبات سهام، خبری از استخراج و ماشینهای ماینر نیست. هر کسی میتواند مقداری ارز دیجیتال در شبکه به وثیقه بگذارد یا اصطلاحا استیک کند و به میزان سهم پول استیک شده، حق اعتبارسنجی در شبکه را به دست آورد.
با اینکه اثبات سهام مشکل اتلاف انرژی اثبات کار را حل میکند، ولی باز هم نتوانسته مشکل عدالت در دسترسی به اعتبارسنجی شبکه را از بین ببرد. در اثبات سهام، ثروتمندان میتوانند تراکنشهای بیشتری در شبکه اعتبارسنجی کنند و افرادی که پول کمتری دارند، حق کمتری برای اعمال نظر خود در شبکه خواهند داشت.
در الگوریتم اثبات سهام اشخاصی که ثروتمندتر باشند، میتوانند کنترل تراکنشها و اعتبارسنجی آنها را بر عهده بگیرند و این با آرمانهای اولیه ارزهای دیجیتال و شبکه های غیرمتمرکز در تضاد است. بنابراین الگوریتم دیگری به نام اثبات سهام نیابتی، برای عادلانهتر و دموکراتیزه کردن الگوریتم اثبات سهام به وجود آمد.
اثبات سهام نیابتی (DPoS)
در الگوریتم اثبات سهام نیابتی، اجماع میان نودهای شبکه از طریق رایگیری صورت میگیرد. در این الگوریتم، هر شخص به اندازه میزان دارایی خود در شبکه حق رای دارد.
کاربران شبکه میتوانند با رای خود یک یا چند نود را برای اعتبارسنجی تراکنشهای شبکه انتخاب کنند. بنابراین در الگوریتم اثبات سهام نیابتی، نودهایی شایستگی اعتبارسنجی تراکنشها را دارند که بیشترین رای را از کاربران شبکه دریافت کرده باشند.
در الگوریتم اثبات سهام نیابتی، نودهای منتخب یا نودهای نماینده (Delegated Nodes) تراکنشهای شبکه را اعتبارسنجی کرده و پاداش دریافت میکنند. این نودها میتوانند پاداش دریافتی خود را میان اشخاصی که به آنها رای دادهاند، تقسیم کنند یا آنکه پاداششان را در جهت ارتقا و توسعه شبکه هزینه کنند. نودهایی که میخواهند به عنوان نود نماینده انتخاب شوند، باید در ابتدا برنامه خود را ارائه دهند و سپس کاربران شبکه آن را بررسی کرده و به آنها رای خواهند داد.
الگوریتم اجماع اثبات اعتماد چیست و چه چیز جدیدی دارد؟
در اثبات اعتماد (Proof of Trust) برخلاف الگوریتمهایی که در بخش قبلی معرفی کردیم، نه قدرت پردازش، نه میزان سرمایه و نه میزان رای نودها، هیچکدام ملاک نیستند. بلکه در اجماع اثبات اعتماد، نودهایی به عنوان اعتبارسنج تراکنشها انتخاب میشوند که بیشترین مشارکت را در انجام کارهای سیستم داشته باشند.
در واقع اثبات اعتماد، بر پایه یک ساختار ارتقا یافته از گراف مدور جهت دار یا همان DAG ساخته شده است. در این مکانیزم اجماع، نودهای شبکه با اعتبارسنجی هر تراکنش امتیازی با نام امتیاز اعتماد یا Trust score دریافت میکنند.
در اجماع اثبات اعتماد، هر چه نودها امتیاز بالاتری داشته باشند، شانس بیشتری برای اعتبارسنجی تراکنشهای بزرگتر خواهند داشت و میتوانند تعداد بالاتری از تراکنشهای شبکه را اعتبارسنجی کنند. به این شکل درآمد نودهای دارای امتیاز بالا افزایش پیدا میکند و نودها انگیزه زیادی برای رقابت با یکدیگر و کسب امتیاز بیشتر خواهند داشت.
اگر نودها در انجام وظایف خود کوتاهی کنند یا در اعتبارسنجی تراکنشها صادقانه رفتار نکنند، امتیاز خود را از دست خواهند داد و تواناییشان برای اعتبارسنجی تراکنش و کسب درآمد به شدت کاهش پیدا میکند. در نتیجه همه نودها سعی میکنند تا با انجام درست وظایف خود، در شبکه مشارکت فعال داشته باشند و باعث ایمنی، پایداری و ارتقا شبکه شوند.
اجماع اثبات اعتماد به زبان ساده همان چیزی است که در بازارهای سنتی قدیمی شاهد آن هستیم. در این بازارها مغازهداران قدیمی که سابقه فعالیت زیادی در بازار دارند، از احترام و اعتبار خاصی برخوردارند. حرف این بازاریهای معتبر، سند است و میتوانند با یک دست خط کار چک و ضمانت بانکی را انجام دهند. در اثبات اعتماد، نودهایی که امتیاز بالایی در شبکه دارند، مانند همین افراد هستند و میتوانند کارهای بزرگ شبکه را انجام دهند.
مزیت اثبات اعتماد به سایر الگوریتم های اجماع
اثبات اعتماد بر پایه ساختار پر سرعت DAG است. از طرف دیگر برای انتخاب نودهای اعتبارسنج، نیاز به سختگیری هایی همچون نیاز به دستگاههای گران قیمت، سرمایه زیاد در سیستم یا انتخاب شدن در رای گیری نیست. بنابراین در اجماع اثبات اعتماد، انتخاب نودها برای اعتبارسنجی تراکنش به راحتی انجام میشود و به همین دلیل سرعت پردازش تراکنش در این الگوریتم و مقیاس پذیری کلی شبکه بسیار بالا میرود.
معایب الگوریتم اثبات اعتماد
تمام تلاش الگوریتم Proof of Trust بر این بوده است که با حذف موانع، انتخاب نودهای اعتبارسنج و به اجماع رسیدن آنها را سرعت بخشد و به این شکل مقیاس پذیری شبکه را تا حد زیادی افزایش دهد. مهمترین ایرادی که به این الگوریتم اجماع وارد است، جدید بودن و کم سابقه بودن در دنیای شبکه های غیرمتمرکز است.
هنوز هیچ سیستم بزرگی با این الگوریتم راه اندازی نشده است و میزان پایداری آن در مقابل حملههایی همچون حمله 51 درصد، مشخص نیست. این سیستم هنوز نوپا است و باید منتظر ماند تا کارکرد و پایداری آن در سیستمهای بزرگ تست شود. آنچه که اکنون مشخص است، یک نوآوری برای توسعه هر چه بیشتر سیستمهای غیرمتمرکز است. باید منتظر زمان بود و ببینیم که آیا اجماع اثبات اعتماد، میتواند جایگزین مناسبی برای الگوریتم های اثبات کار و اثبات سهام شود یا خیر.
سوالات متداول
آیا امکان استخراج ارز دیجیتال در الگوریتم اثبات اعتماد وجود دارد؟
خیر. مکانیزم استخراج رمزارز، مخصوص الگوریتم های اجماع بر پایه اثبات کار است و در اثبات اعتماد هیچ فرآیندی مانند استخراج وجود ندارد.
آیا نودها در الگوریتم اثبات اعتماد پاداش دریافت میکنند؟
بله. نودهایی که در اعتبارسنجی تراکنش های شبکه مشارکت میکنند، به ازای پردازش هر تراکنش پاداش دریافت میکنند. در سیستمهای مبتنی بر اثبات اعتماد، هرچه امتیاز یک نود بیشتر باشد، امکان دریافت پاداش بیشتری را خواهد داشت.
الگوریتم اجماع اثبات اعتماد ایمن است؟
هنوز هیچ استفاده گسترده و بزرگی از این الگوریتم نشده است. بنابراین در حال حاضر برای اظهار نظر درباره ایمنی و پایداری اجماع اثبات اعتماد زود است و باید منتظر آینده ماند.