الگوریتم اجماع در بلاکچین چیست؟ آشنایی با انواع الگوریتم اجماع
مقدمه
همانطور که میدانید، بلاکچین یک شبکه غیر متمرکز توزیع شده است که ثبات، حریم خصوصی، امنیت و شفافیت را فراهم میآورد. علیرغم اینکه هیچ مرجع متمرکزی برای تأیید و تصدیق معاملات وجود ندارد، اما هر معاملهای که در بلاکچین انجام میشود به صورت پیشفرض کاملاً ایمن و تأییدشده در نظر گرفته میشود. احتمالاً این موضوع تنها به خاطر حضورِ الگوریتم اجماع است که یک بخش اصلی در هر شبکۀ بلاک چین است. در این مقاله قصد داریم توضیح دهیم که الگوریتم اجماع (Consensus algorithms) چیست، انواع مختلف آن کدام است و هر کدام چه فعالیتی دارند.
الگوریتم اجماع چیست؟
الگوریتم اجماع (Consensus algorithms) روشی است که از طریق آن، همۀ همتایان شبکۀ بلاکچین به یک توافق مشترک دربارۀ وضعیت فعلی دفتر کل توزیع شده میرسند. در نتیجه، الگوریتمهای اجماع توانستهاند در شبکۀ بلاک چین به قابلیت اتکا دست پیدا کنند و در بین همتایان ناشناختۀ خود و در یک محیط محاسباتیِ توزیع شده، اعتماد کسب نمایند.
الگوریتم اجماع بلاکچین از برخی اهداف خاص مانند به توافق رسیدن، همکاری، همدستی، تساوی حقوق برای هر نود (Node) و مشارکت اجباری هر نود در روند اجماع تشکیل شده است. بنابراین، هدف یک الگوریتم اجماع پیدا کردنِ توافق مشترکی است که برای کلِ شبکه به عنوان یک پیروزی محسوب شود.
انواع الگوریتم اجماع
در ادامه به توضیح انواع الگوریتمهای اجماع و نحوۀ عملکرد آنها میپردازیم.
الگوریتم اجماع اثبات کار (PoW):
از الگوریتم اجماع اثبات کار (Proof of Work)، در انتخاب استخراجکننده برای ساخت بلوک بعدی استفاده میشود. بیت کوین نیز از این الگوریتم اجماع استفاده میکند. ایدۀ اصلی پشت الگوریتم اثبات کار، حل یک معمای پیچیده ریاضیاتی و به دست آوردنِ یک راهحل درست است. این مسائل ریاضی به قدرت محاسباتی زیادی نیاز دارد؛ بنابراین، نودی که معمای ریاضیاتی را زودتر حل کند، میتواند بلوک بعدی را استخراج کند.
الگوریتم اجماع اثبات سهام (PoS)
الگوریتم گواه اثبات سهام (Proof of Stake) رایجترین جایگزین برای الگوریتم اجماع اثبات کار است. در این نوع الگوریتم اجماع، ولیدیتورها (اعتبارسنجها) به جای سرمایهگذاری روی سخت افزارهای گرانقیمت برای حل یک معمای پیچیده، با فریز کردن برخی از کوینهای خود به عنوان سهام، روی کوینهای شبکه سرمایهگذاری میکنند. پس از آن، تمام ولیدیتورها شروع به اعتبار دادن به بلاکها میکنند. اگر اعتبارسنجها بلاکی را کشف کنند که فکر کنند میتواند به زنجیره اضافه شود، با تأیید آن، بلاک را معتبر میکنند.
در پایان، یک ولیدیتور بر اساس سهم خود در شبکه، برای ایجاد بلاک جدید انتخاب میشود. بنابراین الگوریتم اجماع اثبات سهام، ولیدیتورها را از طریق یک مکانیزم انگیزشی برای به توافق رسیدن تشویق میکند.
الگوریتم اجماع تحمل خطای بیزانس عملی (PBFT)
تحمل خطای بیزانس (Practical byzantine fault tolerance) از ویژگیهای شبکۀ توزیع شده برای رسیدن به الگوریتم اجماع است. این روش حتی در مواردی که بعضی از نودهای شبکه قادر به پاسخگویی نباشند یا این کار را با اطلاعات نادرستی انجام دهند، به کار میرود. هدفِ یک مکانیسم BFT، محافظت در برابر خرابیهای سیستم با استفاده از روش تصمیمگیریِ جمعی (هر دو نودهای صحیح و معیوب) بوده و در نتیجه میخواهد تأثیر نودهای معیوب را کاهش دهد.
الگوریتم اجماع اثبات سوزاندن (PoB)
در الگوریتم اجماع اثبات سوزاندن (Proof of Burn) به جای سرمایهگذاری بر تجهیزات سخت افزاریِ گرانقیمت، ولیدیتورها با ارسال رمزارزها به آدرسی که از آنجا قابل استرداد نیستند، آنها را میسوزانند. ولیدیتورها با سپردن توکنها به یک آدرس غیرقابل استرداد، بر اساس یک فرآیند انتخاب تصادفی، اعتبار استخراج در سیستم را کسب میکنند. بنابراین، سوزاندن توکنها در اینجا به این معنی است که اعتبارسنجها در ازای زیان کوتاهمدت خود، تعهدی بلندمدت به دست میآورند.
بسته به اینکه اثبات سوزاندن چطور انجام شده باشد، استخراجکنندگان ممکن است توکن اختصاصی برنامه بلاکچین یا واحد پول یک بلاکچین دیگر مانند بیت کوین را بسوزانند. هر چقدر آنها توکن یا کوینهای بیشتری بسوزانند، شانس انتخابشان برای استخراج بلاک بعدی بیشتر میشود.
در حالی که اثبات سوزاندن یک جایگزین جالب برای گواه اثبات کار (PoW) است، با این حال این پروتکل هنوز منابع را بیهوده هدر میدهد. از آنجایی که قدرت استخراج صرفاً به کسانی میرسد که مایل هستند توکنهای بیشتری بسوزانند، نسبت به استفاده از این الگوریتم تردید وجود دارد.
الگوریتم اجماع اثبات ظرفیت (PoC)
در الگوریتم اجماع اثبات ظرفیت (Proof of Capacity)، ولیدیتورها (اعتبارسنجها) قرار است به جای سرمایهگذاری روی سخت افزارهای گرانقیمت یا سوزاندن رمزارزها، روی فضای هارد دیسکشان سرمایهگذاری کنند. هرچه اعتبارسنجها فضای هارد دیسک بیشتری داشته باشند، شانس بیشتری برای انتخاب برای استخراج بلاک بعدی و کسب پاداش بلاک خواهند داشت.
الگوریتم اجماع اثبات زمان سپری شده (PoET)
الگوریتم PoET (Proof of Elapsed Time) یکی از منصفانهترین الگوریتمهای اجماع است که بلاک بعدی را تنها با استفاده از ابزارهای منصفانه ایجاد میکند. این الگوریتم به طور گستردهای در شبکههای بلاکچین استفاده میشود. در این الگوریتم، هر اعتبارسنج (ولیدیتور) برای ایجاد بلاک خود در شبکه، فرصتی عادلانه به دست میآورد. همه نودها این کار را با انتظار برای مدتزمانی تصادفی در بلاک انجام میدهند.
بلاک جدید به بلاکچین پیوست میشود. برای جلوگیری از اینکه یک سری نودهای خاص همیشه در دریافت پاداش بلاک ایجاد جدید پیروز شوند و ممانعت از اینکه نودها همیشه کمترین مقدار زمان را صرف کنند، بررسیهای دیگری هم در این الگوریتم انجام خواهد شد.
سخن پایانی
در این مقاله به بررسی برخی از روشهای اجماع در بلاکچین پرداختیم. الگوریتمهای اجماع دیگری مانند اثبات فعالیت، اثبات وزن، اثبات اهمیت، اثبات سهام اجارهشده و … نیز وجود دارد که چون اهمیت کمتری داشتند و فقط برخی رمزارزهای خاص از الگوریتمهای دیگر استفاده میکنند، در این مقاله به آنها اشاره نشد.
دیدگاه خود را ثبت کنید