بررسی الگوریتم اجماع اثبات اعتبار (PoA)
الگوریتم اثبات اعتبار (Proof of Authority بهاختصار PoA) مکانیزم اجماعی است که طبق آن فقط افراد معتبر اجازه دارند تراکنشها را تأیید و بلاک جدید در شبکه بلاکچین ایجاد کنند. حال چه افرادی از چنین اعتباری برخوردارند و چگونه آن را کسب میکنند؟ در این مقاله از بلاگ تترلند، الگوریتم اجماع اثبات اعتبار و نحوه کار آن را بررسی کردهایم تا نودهای معتبر شبکه را پیدا کنیم.
یکی از مؤلفههای اصلی فناوری بلاکچین که همیشه در حال تحول و بهروزرسانی است، مکانیسمهای اجماع است. دو الگوریتم اجماع «اثبات کار» و «اثبات سهام» که با شبکههای بلاکچین بیتکوین و اتریوم آغاز به کار کردند، اولین الگوریتمهایی بودند که برای دستیابی به اجماع در شبکه استفاده شدند. بااینحال، این دو الگوریتم با مشکلاتی مانند مصرف انرژی زیاد و سرعت اندک پردازش تراکنش و مقیاسپذیری کم همراه هستند و در این سالها، الگوریتمهای جایگزین بسیاری با ارائه راهحلهای مخصوص خود سعی کردهاند این مشکلات را حل کنند.
الگوریتم اثبات اعتبار (Proof of Authority) چیست؟
الگوریتم اثبات اعتبار (Proof of Authority بهاختصار PoA) یکی از الگوریتمهای جایگزین اثبات کار و اثبات سهام است که در هر ثانیه تراکنشهای بسیار بیشتری را میتواند پردازش کند. اثبات اعتبار الگوریتم اجماع مبتنیبر اعتبار است که راهکاری عملی و مؤثر و با مصرف انرژی کمتر را برای شبکههای بلاکچینی، بهویژه شبکههای خصوصی ارائه میدهد. سال ۲۰۱۷، گوین وود، همبنیانگذار اتریوم، این الگوریتم را معرفی کرد.
نودها یا گرههای اعتبارسنج تراکنشها در الگوریتم اثبات کار (PoW) سختافزارهایشان و در الگوریتم اثبات سهام (PoS) سرمایه خود را دراختیار شبکه قرار میدهند؛ اما در الگوریتم اثبات اعتبار (PoA) نودهای اعتبارسنج هویت و شهرتشان را دراختیار شبکه قرار میدهند.
در الگوریتم اثبات اعتبار، نودها با پشتسرگذاشتن موفقیتآمیز فرایند احراز هویت سخت، حق تأیید تراکنشها و ایجاد بلاک جدید را بهدست میآورند؛ درنتیجه، وظیفه تأمین امنیت شبکه برعهده نودهایی با هویت واقعی و تأییدشده است. در شبکههای مبتنیبر الگوریتم اثبات اعتبار، به نودهای انتخابشدهای که تراکنشها و بلاکها را تأیید میکنند، اعتبارسنج (Validator) گفته میشود.
ازآنجاکه تعداد اعتبارسنجهای بلاک در الگوریتم اثبات اعتبار محدود و کم است، شبکههای بلاکچینیای که از این الگوریتم استفاده میکنند، مقیاسپذیری درخورتوجهی دارند. شبکه بلاکچین ویچین (VeChain یا VET) یکی از شبکههایی است که برای دستیابی به اجماع از الگوریتم اثبات اعتبار استفاده میکند.
الگوریتم اثبات اعتبار (Proof of Authority) چگونه کار میکند؟
در الگوریتم اثبات اعتبار، اعتبارسنجها از نرمافزاری استفاده میکنند که به آنها اجازه میدهد تا تراکنشها را در بلاکها قرار دهند. این فرایند بهصورت خودکار انجام میشود و نیازی نیست که اعتبارسنجها بهصورت مداوم سیستمهای خود را نظارت کنند.
اگرچه شرایط کسب اعتبار برای سیستمهای مختلف متفاوت است، کاربران برای انتخابشدن بهعنوان اعتبارسنج، باید حداقل سه شرط اصلی زیر را داشته باشند:
- اعتبارسنج باید هویت معتبر داشته و مطمئن باشد و با ارائه مدارک، عدمسوءپیشینه خود را اثبات کند.
- هویت اعتبارسنج باید رسماً در شبکه تأیید شود؛ بدینشکل که هویت داوطلب بهصورت عمومی در شبکه منتشر میشود تا هویت واقعی اعتبارسنجها تأیید شود.
- داوطلب باید خواستار سرمایهگذاری اعتبار خود باشد. سختبودن فرایند انتخاب اعتبارسنج باعث کاهش خطر انتخاب اعتبارسنج مخرب و ایجاد انگیزه برای تعهد بلندمدت میشود.
پایه و اساس این مکانیزم که متکی بر شهرت افراد است، اعتبار هویت اعتبارسنجهاست و هدف اصلی تعیین فرایندی سخت و پیچیده برای انتخاب اعتبارسنجها، حذف داوطلبهای ضعیف و مخرب است. همچنین، اتخاذ استانداردی یکسان برای تعیین اعتبارسنجها تضمینکننده یکپارچگی و مطمئنبودن شبکه است.
برای مثال، مکانیزم رتبهبندی فروشندگان وبسایت ایبی eBay را در نظر بگیرید. ابتدا فروشندگان طبق شرایط ایبی میتوانند کالایشان را داخل وبسایت قرار دهند؛ اما پسازآن، بازخورد خریداران است که به آنان اعتبار میدهد. فروشندگانی که بتوانند امتیاز کامل بازخورد خریداران را کسب کنند، هم از اعتبار بیشتری برخوردارند و هم اعتبار وبسایت ایبی را افزایش میدهند. درمقابل، فروشندگانی که بازخورد منفی زیادی دریافت کردهاند، از وبسایت ایبی حذف میشوند. در این صورت، فقط فروشندگانی که امتیاز بازخورد بیشتری دارند، در وبسایت ایبی به فعالیت خود ادامه میدهند.
همانطورکه شهرت فروشندگان در وبسایت ایبی بسیار حیاتی است، در الگوریتم اثبات اعتبار نیز شهرت اعتبارسنجها بسیار اهمیت دارد. در الگوریتم اثبات اعتبار، ابتدا اعتبارسنجها بهصورت تصادفی و طی فرایندی دشوار انتخاب میشوند و سپس، سیستم رأیگیری از سایر نودهایی که از قبل در شبکه بهعنوان اعتبارسنج فعالیت میکردند، برگزار میشود تا نودهای جدید را براساس اعتبارشان انتخاب کنند. این فرایند از دسترسی نودهای مخربی جلوگیری میکند که ممکن است عملکرد سیستم را تحتتأثیر قرار دهند. شایان ذکر است که هر اعتبارسنج از هر سری از بلاکهای متوالی فقط میتواند یکی را در زمان اعتبارسنجی خود تأیید کند.
کاربرانی که حق اعتبارسنجی را بهدست آوردهاند، از انگیزهی لازم برای حفظ پایداری فرایند تأیید تراکنشها و جایگاه خود برخوردارند؛ چراکه با کمکاری و عملیات مخرب، موجب لکهدارشدن شهرت و هویت واقعی خود خواهند شد. ازاینرو، اعتبارسنجها برای جایگاهی که بهسختی بهدست آوردهاند، ارزش بسیار زیادی قائل هستند.
قوتها و ضعفهای الگوریتم اثبات اعتبار (Proof of Authority)
الگوریتم اثبات اعتبار با دو ویژگی مهم زیر راه خود را از الگوریتمهای رایج اثبات کار و اثبات سهام جدا کرده است:
- سرعت زیاد پردازش تراکنشها
- مصرف اندک انرژی
ناگفته نماند که این الگوریتم نیز مانند همه الگوریتمهای اجماع دیگر ضعفهایی دارد؛ ازجمله:
- ازآنجاکه اعتبارسنجها از قبل تأیید میشوند، الگوریتم اثبات اعتبار غیرمتمرکز محسوب نمیشود و برای سیستمهای متمرکز کارآمد است.
- اگرچه سیستمهای اثبات اعتبار از سرعت پردازش تراکنش بسیار زیادی برخوردارند، امکان سانسور و قراردادن تراکنشها در فهرست سیاه همیشه وجود دارد.
- هویت تمام اعتبارسنجها را همگان میتوانند مشاهده کنند. این موضوع ممکن است باعث شود تا اشخاص ثالث اطلاعات اعتبارسنجها را دستکاری کنند.
کدام شبکهها از الگوریتم اثبات اعتبار استفاده میکنند؟
POA Network معروفترین شبکهای است که از الگوریتم اثبات اعتبار استفاده میکند. در این پروژه، اعتبارسنجها از دیتابیسهای عمومی بهعنوان فرایند تشخیص شایستگی اعتبارسنجی استفاده میکنند. هایپرلجر فابریک (Hyperledger Fabric) نیز از الگوریتم اثبات اعتبار استفاده میکند. درواقع، هایپرلجر فابریک براساس الگوریتم تحمل خطای بیزانس عملی کار میکند؛ اما برای جامعه بلاکچینهای خصوصی خود، از الگوریتم PoA استفاده میکند.
یکی دیگر از شبکههایی که از این الگوریتم استفاده میکنند، شبکه ویچین (Vechain) است. ویچین بلاکچینی عمومی در سطح شرکتهای بزرگ است که اطلاعات مدیریت کسبوکار را بهصورت شفاف ارائه میدهد. این شبکه بهصورت تخصصی در حوزه مدیریت زنجیرههای تأمین و لجستیک فعالیت میکند.
جمعبندی
در انتها، باید بگوییم که طبق قوانین فیزیک هیچ سیستم ایدئالی وجود خارجی ندارد. الگوریتمهای اجماع نیز از این قاعده مستثنی نیستند و هرکدام کموکاستیهای خاص خود را دارند. یکی از امنیت زیادی بهره میبرد؛ اما سرعتش کُند است و دیگری مقیاسپذیری کمنظیری دارد؛ اما بهدلیل امنیت ناکافی، هدف حملههای هکرها قرار میگیرد. بااینحال، همه آنها روی یک موضوع اتفاقِنظر دارند: تمرکززدایی و حذف نهاد مرکزی است. بهنظر میرسد الگوریتم اجماع اثبات اعتبار اعتقاد چندانی به این موضوع ندارد و تمرکززدایی را قربانی دستیابی به تراکنشهای سریع و مقیاسپذیری زیاد کرده است.