بیشک بلاکچین تکنولوژی است که اختراع آن دنیا را حتی بیشتر از تصور ما تغییر خواهد داد اما در حال حاضر شناختهشدهترین کاربرد بلاکچین، ثبت و نگهداری دادههای یک رمزارز است. مهمترین ویژگی بلاکچین که آن را خاص و متمایز کرده است، غیرمتمرکز بودن و الگوریتم اجماع در بلاکچین است که یعنی هیچ نهاد بیرونیای بر عملکرد این سیستم نظارت نمیکند و تمامی اطلاعات و دادهها بهجای آنکه روی یک سرور متمرکز ذخیره شوند، روی چندین سرور گوناگون ذخیره و نگهداری میشوند که به این سرورها نود یا گره میگویند. در ادامه در این مطلب از آکادمی مزدکس شما را با مفهوم الگوریتم اجماع در بلاکچین و انواع آن آشنا میکنیم.
غیرمتمرکز بودن شبکه، در کنار مزایایی که دارد، نیازمندیهایی را نیز ایجاد میکند که مهمترین آنها، ایجاد امنیت برای شبکه است. در سیستمهای متمرکز، این امنیت توسط یک نهاد مانند بانک برقرار میشود؛ برای مثال فرض کنید وقتیکه شما با کارت بانکیتان، پولی را به شخصی دیگر واریز میکنید، سیستم بانکی کشور بر این عملیات نظارت میکند و از درستی انجام تراکنش، اطمینان حاصل میکند.
امنیت تراکنشها در بلاکچین چطور تأمین میشود؟
الگوریتم اجماع در بلاکچین، از اصلیترین اجزای شبکه بلاکچین است که وظیفه تأمین امنیت و اعتبارسنجی تراکنشهای انجامشده و بهطور کل، کارکرد بهینه شبکه را به عهده دارد. برای اینکه بهتر با الگوریتمهای اجماع آشنا شوید لازم است در ابتدا اطلاعاتی درباره ساختار شبکه بلاکچین را بدانید. بلاکچین متشکل از زنجیرهای از بلاکهاست که در هر بلاک، اطلاعات تعدادی تراکنش ذخیره میشود.
هر بلاک، اطلاعات منحصر به خود را دارد و هیچ دو بلاکی شبیه یکدیگر نیستند. یک بلاک زمانی میتواند تشکیل یا وارد شبکه بشود که نودها یا گرهها بر سر صحت و اعتبار تراکنشهای انجامشده و تکراری نبودن اطلاعات بلاک ورودی، به توافق برسند. الگوریتم اجماع در بلاکچین، مکانیزمی است که بهوسیله آن، این توافق بین نودها شکل میگیرد و بلاک جدید اجازه ورود به شبکه را پیدا میکند. الگوریتم اجماع همچنین وظیفه جلوگیری از حملاتی نظیر دو بار خرج کردن را به عهده دارد.
الگوریتمهای اجماع، انواع مختلفی دارند که بر اساس نوع کارکرد و اعتبارسنجیشان تقسیمبندی شدهاند.
انواع الگوریتم اجماع در بلاکچین
برخی از محبوبترین این الگوریتمها که در این مقاله به توضیح آنها خواهیم پرداخت عبارتاند از؛
الگوریتم اثبات کار، الگوریتم اثبات سهام، الگوریتم اثبات سوزاندن، الگوریتم اثبات سهام وکالتی، الگوریتم اثبات اعتبار، الگوریتم اثبات وزنی، الگوریتم اثبات شهرت، الگوریتم اثبات فضا-زمان، الگوریتم اثبات فعالیت، الگوریتم تحمل خطای بیزانس، الگوریتم توافقنامه بیزانس متعهد شده و الگوریتم زمان سپریشده.
در حال حاضر معروفترین الگوریتمهای اجماع در بلاکچین، روشهای اثبات کار و اثبات سهام هستند.
اثبات کار | Proof of Work
اثبات کار، الگوریتم اجماعی است که به آن استخراج یا ماینینگ هم گفته میشود و اکثر ارزهای دیجیتال معروف مانند بیتکوین و لایت کوین از آن استفاده میکنند. در این روش، افراد میتوانند قدرت پردازشی سختافزار کامپیوتر خود را به شبکه یک ارز دیجیتال مانند بیتکوین اختصاص دهند و در صورت تایید تراکنشها، از شبکه پاداش دریافت کنند.
این روش به دلیل استفاده از قدرت پردازشی سختافزار کامپیوترها برای تایید تراکنشها یا درواقع استخراج ارزهای دیجیتال، انرژی و بهخصوص برق زیادی مصرف میکند. همین مسئله در کنار مشکلات دیگر این روش، باعث شد تا روش دیگری به نام اثبات سهام مطرح شود.
مزایای الگوریتم اثبات کار
- عدم تمرکز
- مکانیزم پاداشدهی
- تجربه و سابقهی بسیار بالا
معایب اثبات کار
- اتلاف انرژی
- امکان حمله 51 درصدی
- سرعتپایین اضافه شدن بلاک به بلاکچین
- مقیاسپذیری پایین
- تشکیل استخرهای ماینینگ
اثبات سهام | Proof of Stack
اثبات سهام نیز یک الگوریتم اجماع در شبکههای غیرمتمرکز است اما برعکس روش اثبات کار، به سختافزار و مصرف برق نیاز ندارد.
در فرآیند اثبات سهام، افراد عملیات استخراج انجام نمیدهند. ماینری وجود ندارد و بهجای آن، اعتبارسنج (Validator) فرآیند افزودن بلاک به بلاکچین را انجام میدهد.
برای تولید بلاک جدید در شبکهای که مبتنی بر اثبات سهام است، افراد باید مقداری از ارز دیجیتال شبکه موردنظرشان را بخرند و در کیف پول خود آن را به شبکه اختصاص دهند که مانند یک نوع اعتبار برای فرد محسوب میشود.اصطلاحاً به این کار سهام گذاری هم میگویند. درنهایت، هرچقدر اعتبار فرد در آن شبکه بیشتر باشد، شانس بیشتری برای بستن بلاک خود و تولید یک بلاک جدید دارد.
مزایای اثبات سهام
- تراکنشهای سریعتر
- دریافت پاداش و بهره با استفاده از فرآیند سهام گذاری
- احتمال بسیار پایین حملات ۵۱ درصدی
- سازگار با محیطزیست و مصرف کم انرژی برق
- مقیاسپذیری بالا
معایب اثبات سهام
- بهنسبت روشهای دیگر، کمتر آزمایششده و تجربهی پایینی دارد
- افزایش قدرت ثروتمندان و سهامداران عمده
- نیاز به ارز برای سهام گذاری و قیمت بهنسبت بالای ارز
اثبات سهام نمایندگی شده یا وکالتی | DPOS
اثبات سهام نمایندگی شده هم تقریباً شبیه به اثبات سهام کار میکند با این تفاوت که در الگوریتم سهام نمایندگی شده، دارندگان کوینهای شبکه، نمایندگان خود را با سیستم رای گیری غیرمتمرکز انتخاب میکنند. این نمایندگان یا همان اعتبارسنجها وظیفه تایید بلاکهای جدید و اعتبار سنجی تراکنشها و تنظیم قوانین پروتکلها را بر عهدهدارند.
روش اثبات سهام و نمایندگی اثبات سهام، هر دو جایگزینی برای روش پرمصرف اثبات کار که برای ارزهایی مثل بیتکوین استفاده میشوند هستند اما میتوان گفت روش نمایندگی اثبات سهام، درواقع نتیجه دموکراتیکتر اثبات سهام است و تلاش میکند تا دموکراسی دیجیتال را برقرار کند.
هر فرد به ازای حجم کوینهایی که در شبکه سهام گذاری کرده است، حق رای مستقیم دارد که البته افراد میتوانند حق رایشان را در اختیار نمایندگان دیگر نیز قرار دهند.
ارزهای دیجیتالی مانند کاردانو، ترا، ترون، کازماس از این الگوریتم اجماع استفاده میکنند.
مزایای اثبات سهام وکالتی
- افزایش مقیاس و سرعت بلاکچین به دلیل کمتر بودن تعداد اعتبارسنجها و درنتیجه سریعتر و راحتتر به اجماع رسیدن برای تایید بلاک جدید.
- حق مشارکت برای همه حتی با کمترین سرمایه؛ در این روش همه حق رای و انتخاب نماینده خود رادارند.
معایب اثبات سهام وکالتی
- متمرکز شدن: با اینکه به خاطر محدود شدن تعداد اعتبارسنجها سرعت شبکه بلاکچین بیشتر میشود اما درعینحال این مسئله ممکن است باعث متمرکز شدن شبکه شود و نمایندگان انتخابی امکان مسدود کردن تراکنشهای معتبر و حسابها را پیدا کنند.
- هزینه زیاد نماینده شدن: در این روش، کاربرانی که میخواهند نماینده شوند باید ترجیجا مقدار زیادی دارایی داشته باشند تا بتوانند اعتماد رای دهندگان را جلب کنند. از آنطرف، هنگامیکه نماینده شدند هم باید هزینههای مدیریت نود، پهنای باند کافی و حافظه کافی را در نظر بگیرند که درنهایت در برابر پاداشی که از تایید بلاکها دریافت میکنند شاید زیاد بهصرفه نباشد.
الگوریتم اجماع اثبات سوزاندن | Proof of Burn
روش اثبات سوزاندن، بین دو روش اثبات کار و اثبات سهام قرار دارد و به آن روش اثبات کار بدون مصرف انرژی هم میگویند.در این الگوریتم، به ماینرها درازای سوزاندن توکنهای خود، اجازه ایجاد بلاک جدید داده میشود.
ابن روش بر مبنای سوزاندن و از بین بردن کوینها کار میکند بدینصورت که؛ هر فردی بتواند اثبات کند که بیشترین تعداد کوین را سوزانده است، بهعنوان عضوی قابلاعتماد برای اعتبارسنجی بلاکهای جدید شناخته میشود و به ازای حجم کوینهایی که سوزانده است حق اضافه کردن بلاک به شبکه را دارد.
ایده اصلی ایجاد این الگوریتم علاوه بر مصرف کمتر انرژی نسبت به روش اثبات کار، جلوگیری از دوباره خرج کردن یا double spending است.
در این روش مشکل حمله 51 درصدی یا درواقع به نحوی متمرکز شدن با احتمال کمتری رخ میدهد زیرا هر فرد برای تولید بلاک جدید باید تعدادی توکن را خریداری کرده و بسوزاند که این کار با حجم بالا بهصرفه نخواهد بود.
معروفترین ارز دیجیتال پشتیبانی شده توسط این الگوریتم، کانتر پارتی یا Counterparty (XCP) است که در آن بیتکوینها به آدرسی که فاقد کلید خصوصی است فرستادهشده و ازای آن کاربران توکن کانترپارتی دریافت میکنند.
مزایای روش اثبات سوزاندن
- مصرف انرژی کمتر
- بالا رفتن قیمت کوینها درنتیجه کمیابی حاصل از سوزاندن آنها
- غیرمتمرکز بودن توزیع کوینها با احتمال بیشتر
معایب روش اثبات سوزاندن
- نیاز به سرمایه اولیه زیاد دارد
- تضمینی برای بازیابی ارزش تمام کوینهای سوزانده شده وجود ندارد
الگوریتم اجماع اثبات اعتبار | Proof of Authority
در این روش، اعتبار حرف اول را میزند و اعتبار بلاکها توسط فردی که اعضای شبکه به آن اعتماد کامل دارند، تایید میشود. این روش، خروجی رضایت بخشی دارد و با توجه به نحوه عملکرد آنکه بر اساس شناخت و اعتماد است، برای شبکههای خصوصی کاربرد دارد و بعید است بتوانید آن را در بلاکچینهای عمومی پیدا کنید.
مزایای روش اثبات اعتبار
- مصرف انرژی کمتر نسبت به روش اثبات کار
- بهرهوری بیشتر و مقیاسپذیری
معایب روش اثبات اعتبار
- ایجاد سیستمهای متمرکز
- در همه شبکهها نمیتواند کاربرد داشته باشد
الگوریتم اجماع اثبات وزنی | Proof of Weight
در هرکدام از الگوریتمهای اجماع، معیار مشخصی برای انتخاب مکانیزم تایید بلاکها وجود دارد مانند؛ میزان کوینهای سهام گذاری شده یا میزان کوینهای سوزانده شده.
در الگوریتم اجماع اثبات وزنی نیز بر اساس میزان ارزهای رمزنگاریشده، به هر کاربر وزنی داده میشود و طبیعتاً هر چه وزن دادهشده به کاربر بیشتر باشد، شانس او برای ورود بلاکهای جدید بیشتر است.
ممکن است بگویید این روش، با روش اثبات سهام فرقی ندارد اما نکته اینجاست که در این روش، هر فعالیت قابلاندازهگیری توسط کاربر میتواند در تعیین وزن آن نقش داشته باشد. مثلاً در پروژه ذخیرهسازی فایل، مقدار فایلهای ذخیرهشده یک معیار وزن است.
تفاوت دیگر این روش با روشهای دیگر این است که در الگوریتم اثبات وزن، پاداشی به کاربر داده نمیشود و به همین دلیل انگیزه دادن به افراد برای استفاده از این الگوریتم، سختتر است.
مزایای روش اثبات وزن
- قابل تنظیم برای پروژههای مختلف
معایب روش اثبات وزن
- مشکل ایجاد انگیزه برای کاربران
الگوریتم اثبات شهرت | Proof of Reputation
این روش برای تایید تراکنشها و تأمین امنیت شبکه خود از شرکتها یا افراد مشهور استفاده میکند. این افراد یا شرکتها باید آنقدر مشهور باشند که درصورتیکه قصد تقلب یا خرابکاری داشته باشند، با عواقب مالی و تجاری جبرانناپذیری روبرو شوند.
زمانی که شهرت یک تایید کننده در شبکه اثبات شود، میتواند فعالیت خود را شروع کند.
این الگوریتم در حال حاضر توسط گوچین استفاده میشود.
مزایای روش اثبات شهرت
- برای شبکههای خصوصی کارآمد است
معایب روش اثبات شهرت
- فقط برای شبکههای خصوصی و دارای مجوز قابلاستفاده است
الگوریتم اثبات فضا – زمان | Proof of Spacetime
در روش اثبات فضا، زمانکه به الگوریتم اثبات کار نیز شباهت دارد، ماینرهای ذخیرهسازی، بهطور مرتب باید ثابت کنند که اطلاعاتی را که متعهد شدهاند بهصورت ذخیره دارند. هر چه این ماینرها مدتزمان بیشتری بتوانند این اطلاعات را نگهداری کنند، بلاکهای بیشتری را میتوانند اعتبار سنجی و به شبکه اضافه کنند.
مزایای اثبات فضا – زمان
- مصرف انرژی کمتر
- عادلانهتر بودن
معایب اثبات فضا – زمان
- افزایش تقاضا برای فضای ذخیرهسازی اطلاعات
الگوریتم اثبات فعالیت | Proof of Activity
روش اثبات فعالیت، سعی دارد تا بهترین جنبههای دو روش اثبات کار و اثبات سهام را به کار گیرد. در ابتدا فرایند تولید بلاک مانند اثبات کار شروع میشود اما در ادامه فرایند شبیه به روش اثبات سهام ادامه مییابد.
Decred (DCR) معروفترین ارز دیجیتالی است که از این الگوریتم استفاده میکند.
مزایای روش اثبات فعالیت
- امنیت بالا در مقابل حک شدن
- احتمال پایین حمله 51 درصدی
معایب روش اثبات فعالیت
- مصرف نسبتاً بالای انرژی
الگوریتم تحمل خطای بیزانس | Byzantine Fault Tolerance
تا اینجا، الگوریتمهای اجماع مختلف را که وظیفهشان تأمین امنیت شبکه و تایید بلاکهای جدید بود را توضیح دادیم و به مزایا و معایب هرکدام اشاره کردیم.
اما اگر زمانی این الگوریتمها نتوانند بهخوبی به وظیفه خود عمل کنند و یکی از نود یا گرهها دچار مشکل شد، کل آن شبکه از کار میافتد؟
طبیعی است که اگر اینطور باشد و با درست عمل نکردن یکی از اعضای شبکه بلاکچین، امنیت و پایداری کل شبکه به خطر بیفتد، شما نمیتوانید به آن اعتماد کنید.
الگوریتمهای تحمل خطای بیزانس برای حل این مشکل در شبکه بلاکچین کاربرد دارند.
هایپرلجر (Hyperledger)، استلار (Stellar)، دیسپچ (Dispatch)، ریپل (Ripple) از معروفترین ارزهایی هستند که از این الگوریتمها استفاده میکنند.
توافقنامه بیزانس متعهد شده | Federated Byzantine Agreement
توافقنامه بیزانس متعهد شده، یکی از انواع الگوریتمهای تحمل خطای بیزانس است که ارزهای دیجیتال استلار و ریپل از آن استفاده میکنند. ایده اصلی در این الگوریتم این است که هر تایید کننده اطلاعات را همانطور که به دستش میرسد، منتشر کند. در ارز دیجیتال ریپل، این تاییدکنندگان از قبل تعیینشدهاند.
مزایای الگوریتم تحمل خطای بیزانس
- بهرهوری بالا
- هزینه و مخارج کم
- مقیاسپذیر
معایب الگوریتم تحمل خطای بیزانس
- متمرکز بودن
الگوریتم اثبات زمان سپریشده | Proof of elapsed time
در این الگوریتم، هر نود یا گره شرکتکننده در شبکه، باید مدتزمانی را منتظر بماند که این مدتزمان توسط شبکه بهصورت تصادفی انتخاب میشود. گرهها در این زمان به خواب میروند و اولین گرهای که بیدار میشود یا درواقع کوتاهترین زمان انتظار را داشت، اجازه ثبت بلاک جدید را در شبکه پیدا میکند.
مزایای اثبات زمان سپری شده
- مصرف انرژی کمتر
- بالابردن بهرهوری با اجرای لاتاری عادلانه
معایب اثبات زمان سپری شده
- وابستگی این الگوریتم به شرکت سازنده آن یعنی اینتل و زیر سؤال بردن ماهیت غیرمتمرکز ارزهای دیجیتال
الگوریتم اجماع گراف جهتدارغیرمدور | DAGs
در الگوریتمهای اجماع DAG، دیگر ساختار داده بلاکچینی در کار نیست و تراکنشها بهصورت غیرهمزمان مدیریت میشوند. مزیت این الگوریتم، امکان انجام بیشمار تراکنش در ثانیه است.
محبوبترین ارزهای دیجیتال روی این الگوریتم، آیوتا (IOTA)، هشگراف (Hashgraph)، نانو یا ریلبلاک سابق (Nano) است.
مزایای گراف
- مقیاسپذیری
- کارمزد پایین
معایب گراف
- وابسته به نوع پیادهسازی
مطالعه مطالب زیر را به شما توصیه میکنیم:
جمعبندی
بلاکچین در نقش یک دفترکل توزیعشده و با هدف ثبت و نگهداری اطلاعات ایجاد شده است و از ابزارها و زیرساختهای متعددی برای دستهبندی و تایید اطلاعات درونی خود استفاده میکند. الگوریتمهای اجماع نقش مهمی را در حفظ یکپارچگی و صحت سنجی اطلاعات ایفا میکنند و الگوریتمهای اجماع متفاوتی به منظور ارائه ویژگی متعدد در این فناوری ایجاد شده است. در این مقاله از آکادمی مزدکس، یک بررسی تحلیلی و جامع را در حول محور این الگوریتمها داشتیم.
لینک کوتاه کپی شد https://mazdax.ir/academy/?p=1829