دانستنی‌های جهان کریپتو

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

نوشته شده توسط کریپتوگرل

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

منظور از گواه اثبات کار و گواه اثبات سهام چیست؟ سیستم توافق توزیع شده یا اجماع یعنی در هنگام نقل و انتقال وجه نقد از هر شخصی، نیاز به اعتماد به یک شخص ثالث مثل بانک وجود نداشته باشد. بلکه هر کسی یک کپی از دفتر کل توزیع شده را در اختیار دارد و به صورت مستقیم میتواند اطلاعات مورد تایید خود را را بر روی دفتر کل بنویسد که این گواهی با دو الگوریتم گواه اثبات کار (PoW) و گواه اثبات سهام (PoS) در حال حاضر شناخته میشوند. در ادامه با روند کار هر کدام و  نقاط ضعف و قوت آنها آشنا میشوید.

الگوریتم اثبات کار (Proof of Work) چیست؟

یکی از روش‌های اجماع در ارزهای دیجیتال الگوریتم اثبات کار یا PoW) Proof of Work) است که برای تایید تراکنش‌ها، تولید بلوک و حفظ امنیت شبکه بلاکچین به کار گرفته می‌شود. اصول اساسی کار حل یک معمای پیچیده ریاضی است که برای دستیابی به جواب آن نیروی پردازشی کامپیوتری زیادی به کار گرفته می‌شود که به همین دلیل استفاده از این روش اجماع برق و قدرت پردازشی زیادی را هدر می‌دهد.

مشهورترین کاربرد این الگوریتم در شبکه بیت‌کوین است؛ در زمینه امنیت نیز این نوع الگوریتم اجماع تا حد ممکن ضد هک طراحی شده و حمله به شبکه مستلزم انرژی و هزینه بسیار زیادی است که انگیزه حملات به آن را از بین می‌برد. استخراج‌کنندگان با استفاده از الگوریتم اثبات کار (Proof of Work) یا PoW با یکدیگر بر سر تکمیل تراکنش‌های شبکه و گرفتن پاداش رقابت می‌کنند. در واقع Proof of work یک پروتکل است که هدف اصلی آن جلوگیری از حملات سایبری از جمله DDoS است.

کاربران در یک شبکه برای یکدیگر ارزهای دیجیتالی ارسال میکنند. دفترکل (Ledger) غیرمتمرکز هم همه‌ی تراکنش‌ها را در بلوک‌ها جمع‌آوری می‌کند. با این حال در تایید تراکنش‌ها و آرایش بلوک‌ها هم باید دقت داشت. مسئولیت این کار به عهده‌ی گره‌های خاصی است که Miner یا استخراج‌کننده نامیده می‌شوند و فرایند انجام آن هم Mining یا استخراج نام دارد.

در الگوریتم اثبات کار تمام استخراج کننده‌های شبکه با هم رقابت می‌کنند تا اولین نفری باشند که برای مسئله ریاضی مربوط به بلاک مورد نظر، یک راه حل پیدا کنند. مسئله‌ای که به راحتی قابل حل نیست و باید با تلاش زیاد اقدام به حل آن کرد. وقتی یک استخراج کننده جواب را پیدا کرد، در همان زمان خبر حل شدن را به تمام شبکه اعلام می‌کند و پاداش خود را که مقداری ارز دیجیتال است براساس پروتکل شبکه تحویل می‌گیرد.

هر چقدر قدرت رایانه‌ای بیشتری به شبکه اضافه شود، این حد مشخص افزایش می‌یابد و در نتیجه تعداد محاسبات مورد نیاز برای حل بلاک جدید هم افزایش خواهد یافت. این روش باعث افزایش هزینه تولید بلاک جدید خواهد شد و استخراج کننده‌ها مجبور می‌شوند عملکرد سیستم استخراج خود را بهبود دهند تا این عمل از نظر اقتصادی به صرفه باشد.

منظور از پازل یا معمای پیچیده ریاضی چیست؟

این معمای پیچیده مسئله‌ای است که حل آن نیازمند نیروی کامپیوتری زیادی است. پاسخ مسئله‌ی اثبات کار یا معمای پیچیده ریاضی “هش” نام دارد. هش (Hash) را می توان به صورت اثر انگشت دیجیتالی یک داده در نظر گرفت. با رشد شبکه، دشواری مسائل هم بالا می‌رود و الگوریتم‌ها برق بیشتری را برای حل کردن نیاز دارند، بنابراین میزان پیچیدگی کار مسئله‌ی حساسی است.

هش (Hash)، یک فرمول ریاضی تصادفی و پیچیده است که در فرآیند تائید بلاک های داده تراکنش استفاده می شود. هنگامی که استخراج کننده، هش مناسب را در یک بلاک محاسبه می کند، کوین ها و یک درصد از هزینه های تراکنش که در آن بلاک تعبیه شده، به عنوان پاداش به او تعلق می گیرد.

دستیابی به هش درست در یک بلاک نیازمند چندین بار آزمایش و تطبیق و تنظیم محاسبه است. بعضی از بلاک ها حتی اگر به درستی پردازش شوند باز هم پاداشی نمی دهند. دشواری محاسبه هش در یک بلاک، نسبتا بالاست بنابراین پاداش ها با نرخ رشد سریع توزیع نمی شوند. با این همه تفاسیر ماینینگ به ایجاد کوین های نو کمک می کند و علم ریاضی در آن تنظیم می شود، بنابراین فرآیند پاداش دادن خیلی سریع اتفاق نمی افتد و همین امر باعث می شود ارزش ارز کم نشود.

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

خصیصه های کلیدی برای توابع هش رمزنگاری شده اهمیت دارند عبارتند از :

۱.محاسبه هش برای متن ساده کار بسیار ساده ای است .

۲.تابع هش یک تابع یک طرفه است. به این معنی که شما نمی توانید به سادگی از متن رمزی به متن ساده دست پیدا کنید حتی در صورتیکه تابع هش استفاده شده برای ایجاد هش را نیز بدانید این کار ممکن نیست.

۳.در صورتیکه متن ساده تغییر پیدا کند حتی یک تغییر بسیار جزئی هش خروجی نیز کاملا تغییر خواهد یافت.

۴.توابع هش دارای قابلیت جلوگیری از تصادم هستند در نتیجه هیچ وقت نبایستی دو ورودی متفاوت هش یکسانی را ایجاد کنند.

۵.مسلما برای یک تابع هش ورودی یکسان خروجی یکسانی خواهد داشت.

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

الگوریتم اثبات کار (Proof of Work) چگونه در بلاک‌چین اجرا می‌شود؟

استخراج‌کنندگان پازل را حل می‌کنند، بلوک جدیدی شکل می‌دهند و تراکنش‌ها را تایید می‌کنند. دشواری یک پازل به شمار کاربران، نیروی جاری و بار شبکه بستگی دارد. هشِ هر بلوک هم شامل هش بلوک قبل است که امنیت را بالا می‌برد و از تجاوز به بلوک جلوگیری می‌کند.

اگر استخراج‌کننده‌ای بتواند پازلی را حل کند، بلوک جدید شکل می‌گیرد. پس از تشکیل بلوک جدید، تراکنش‌ها در این بلوک قرار می‌گیرند و با قرار گرفتن تراکنش‌ها در این بلوک، صحت آن‌ها تایید می‌شود.

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

الگوریتم اثبات کار معمولا کجا اجرا می‌شود؟

این الگوریتم در بسیاری از ارزهای رمزنگاری‌ شده به کار گرفته شده است. مشهورترین کاربرد آن در بیت‌کوین است و این بیت‌کوین بود که این نوع از اجماع را پایه‌ریزی کرد. الگوریتم هش بیتکوین اجازه‌ی تغییر پیچیدگی یک پازل را بر اساس نیروی کل شبکه می‌دهد.

زمان میانگین شکل‌گیری بلوک ۱۰ دقیقه است. ارزهای مبتنی بر بیت‌کوین، مانند لایت‌کوین نیز همین سیستم را دارند. مفهوم اثبات انجام کار حتی قبل از بیت کوین هم مورد استفاده قرار می‌گرفت، اما ساتوشی ناکاموتو از این تکنیک در ارز دیجیتال انقلابی خود استفاده کرد که باعث تغییر شکل روش های معمالات سنتی شد.

پروژه‌ی بزرگ دیگری که از این الگوریتم استفاده می‌کند اتریوم است. با علم به اینکه سه‌چهارم پروژه‌ها در پلتفرم اتریوم اجرا شده‌اند، می‌توان با اطمینان گفت که اکثر اپلیکیشن‌های بلاکچین از مدل اجماع اثبات کار استفاده می‌کنند.

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

چرا باید از الگوریتم اجماع اثبات کار استفاده کرد؟

دفاع در مقابل حملات: الگوریتم اثبات کار محدودیت‌هایی را بر کنش‌های موجود در شبکه اعمال می‌کند. اجرای این الگوریتم نیازمند تلاش زیادی است. حملات کارآمد برای انجام محاسبات نیازمند نیروی رایانشی و زمان زیادی هستند. بنابراین همیشه احتمال حمله وجود دارد اما چون هزینه‌ها خیلی بالا هستند، این کار عملاً بی‌فایده می‌شود.

امکان استخراج: مهم نیست که چقدر پول در کیف پولتان دارید. مهم این است که نیروی رایانشی قوی‌ای برای حل پازل‌ها و ایجاد بلوک‌های جدید داشته باشید. بنابراین دارندگان مقادیر زیاد پول مسئول تصمیم‌گیری درباره‌ی کل شبکه نیستند.

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

معایب الگوریتم اجماع اثبات کار

هزینههای بالا: استخراج نیازمند سخت‌افزار کامپیوتری بسیار خاص است تا الگوریتم‌های پیچیده را پیش ببرد. هزینه‌های آن بالا است و استخراج تنها توسط استخرهای خاص استخراج صورت می‌گیرد. این دستگاه‌های خاص برق زیادی مصرف می‌کنند که هزینه‌ها را هم بالا می‌برند. هزینه‌های بالا تمرکز سیستم را تهدید می‌کند. مشاهده‌ی این واقعیت در بیت‌کوین دشوار نیست.

بیهودگی محاسبات کامپیوتری: استخراج‌کنندگان کار زیادی برای تولید بلوک‌ها انجام می‌دهند و برق زیادی مصرف می‌کنند. با این حال محاسبات کامپیوتری آن‌ها در هیچ جای دیگر قابل استفاده نیست. آن‌ها امنیت شبکه را تضمین می‌کنند اما نمی‌توانند در کسب‌وکار، علم و زمینه‌های دیگر مورد استفاده قرار بگیرند.

حمله‌ی ۵۱ درصد: حمله‌ی ۵۱ درصد یا حمله‌ی اکثریت زمانی است که یک کاربر یا گروهی از کاربران کنترل اکثریت نیروی استخراج را به دست می‌گیرند و مهاجمان نیروی کافی برای کنترل اکثر رویدادهای شبکه را دارند. آن‌ها می‌توانند تولید بلوک‌های جدید را به انحصار خود دربیاورند و پاداش بگیرند چون می‌توانند مانع تکمیل بلوک‌ها توسط دیگران بشوند و می‌توانند تراکنش‌ها را هم رزرو کنند. فرض کنید آلیس با استفاده از بلاک‌چین مقداری پول برای باب فرستاده است. آلیس در حمله‌ی ۵۱ درصد درگیر شده است اما باب نه. این تراکنش در بلوک قرار می‌گیرد اما مهاجمان اجازه‌ی انتقال پول را نمی‌دهند و در نتیجه در زنجیره “فورک” اتفاق می‌افتد.

مفهوم  و عملکرد گواه اثبات کار (PoW) در یک نگاه

برای انجام عملیات ماینینگ یا استخراج بایستی یک گروه از معاملات مشروع بر روی دفتر کل ثبت شود. عملیات ماینینگ به دو منظور صورت می‌گیرد:

۱.برای تایید مشروعیت تراکنش‌ها و جلوگیری از پرداخت‌های مجدد

۲.برای ایجاد یک ارز دیجیتالی که بعنوان جایزه کارهای انجام شده در گذشته توسط Miner به او داده می‌شود.

برای انجام تراکنش چه مراحلی طی می‌شود:

۱.تراکنش‌ها در کنار هم جمع می‌شوند و یک بلاک را تشکیل می‌دهند.

۲.استخراج کننده‌ها اعتبار هر بلاک را تایید می‌کنند.

۳.در ادامه Miner ها بایستی به حل یک پازل ریاضی بپردازند که این پازل ریاضی به عنوان مساله در PoW شناخته می‌شود.

۴.پاداش به اولین استخراج کننده‌ای داده می‌شود که مسئله هر بلاک را حل کند.

۵.در مرحله‌ی آخر تراکنش‌های تایید شده بر روی بلاکچین عمومی ذخیره می‌شود.

همه‌ی Miner‌ها برای اینکه اولین نفری باشند که این پازل ریاضی را حل می‌کنند، با هم رقابت می‌کنند. برای حل این پازل ریاضی، میزان سختی معینی در نظر گرفته شده است که یک رقابت بین Miner ها ایجاد می‌کند و باعث می‌شود قدرت محاسبه بیشتری به شبکه اضافه شود. با سخت تر شدن عملیات Mining در واقع Miner‌ها مجبور می‌شوند کارایی و اثربخشی فرایند را افزایش دهند و این امر سبب حفظ تعادل اقتصادی این شبکه می‌شود.

الگوریتم اثبات سهام (Proof of Stake) چیست؟

PoS در واقع یک راه دیگر برای اعتباربخشی به معاملات و برقرار کردن توافق توزیع شده است. هدف PoW و PoS یکسان است ولی فرایند رسیدن به این هدف متفاوت است.

ایده اثبات سهام برای اولین بار در سال ۲۰۱۱ در انجمن جهانی بیت کوین تاک مطرح شد. در سال ۲۰۱۲، برای اولین بار در ارز Peercoin از آن استفاده شد و بعد از آن ارزهای دیگری مثل Nxt و Blackcoin از این شیوه بهره بردند.

برخلاف PoW که در آن به Minerها برای حل پازل ریاضی با هدف تایید تراکنش‌ها و ایجاد Block جدید جایزه داده می‌شد، در PoS این خالق بلوک جدید است که بسته به میزان سرمایه‌اش یک راه قطعی انتخاب می‌کند و این سرمایه را سهام یا Stake می‌نامد.

پس جایزه‌ای در کار نیست و ماینرها فقط کارمزد تراکنش‌ها را دریافت می‌کنند. در این روش تمام واحدهای ارز مورد نظر از قبل استخراج شده است و تعداد آن هرگز تغییر نمی‌کند. این بدان معنی است که در سیستم PoS هیچ پاداشی وجود ندارد. به همین دلیل، در سیستم اثبات کار به ماینرها فورجر (Forger) هم می گویند.

در الگوریتم گواه اثبات کار (PoW) هر چه توان محاسباتی بیشتری داشته باشید، شانس موفقیت بیشتری برای ایجاد بلاک دارید یعنی استخراج کننده ای موفق تر است که کامپیوتر های قوی‌تر داشته باشد، اما در سیستم گواه اثبات سهام (PoS) هرچه پول یا سهام بیشتری در سیستم  داشته باشید شانس بیشتری برای ایجاد بلاک دارید.

نقاط ضعف و قوت الگوریتم گواه اثبات سهام

در گواه اثبات کار هر چه توان محاسباتی بیشتری داشته باشید، شانس موفقیت بیشتری برای ایجاد بلاک دارید یعنی استخراج کننده ای موفق تر است که کامپیوتر های قوی‌تر داشته باشد. در سیستم گواه اثبات سهام هرچه پول بیشتری در سیستم  داشته باشید شانس بیشتری برای ایجاد بلاک دارید.

نقاط قوت

۱.با انتقال دادن تضمین امنیت شبکه از انرژی مصرف شده به پول و ارزشی که در شبکه وجود دارد حمله ۵۱ درصدی یا حملات مشابه از لحاظ فنی سخت تر می شوند و جلوگیری از آن ها آسان تر خواهد بود. در صورت وجود چنین حمله هایی و در بدترین حالت، شبکه توسط هاردفورک به حالت قبلی برمی گردد.

۲.کاهش مصرف انرژی شبکه و نیاز شبکه به دستگاه ها و سیستم های بزرگ،  آسیب کمتری به محیط زیست وارد می کند و باعث هدر رفتن منابع نمی شود.

۳.از لحاظ تئوری بازی ها (Game theory) کسی که قصد حمله به شبکه دارد چون نیازمند داشتن مقدار زیاد پول در شبکه است انگیزه پایین و هزینه بسیار بالا برای ایجاد آسیب به شبکه دارد. در مقابل مثلا در سیستم های گواه اثبات کار یک نیروی مهاجم که توانایی محاسباتی بیشتر از نیمی از شبکه را دارد با هزینه فقط انرژی (دستگاه‌ها همچنان قابل استفاده هستند) و به صورت مستمر می تواند به یک شبکه حمله کند تا شبکه را به طور کامل از کار بیاندازد.

نقاط ضعف

۱.ابتدایی ترین مشکلی که برای این سیستم ها مطرح می شود مساله در خطر نبودن منبع است (nothing at stake) که در سیستم های اولیه وجود داشته.  مهاجم می تواند در زمان ایجاد انشعاب (Fork) با هر دو شاخه همراهی کند. هر کدام از الگوریتم ها روش خاصی برای مواجه با این مشکل دارند. مثلا در روش پیشنهادی در اتریوم احتمالا کسی که قصد آسیب زدن به سیستم را داشته باشد مبالغی را که به عنوان تضمین برای ورود به فرایند ساختن بلاک در جایی ذخیره کرده را از دست خواهد داد.

۲.خطر مرکزیت: کسانی که بیشترین میزان پول را در سیستم دارند قاعدتا می توانند سیستم را کنترل کنند. در صورت داشتن میزان کافی سهام می توان سانسور در سیستم و جلوگیری از بعضی تراکنش ها را اعمال نمود.

مفهوم  و عملکرد گواه اثبات سهام (PoS) در یک نگاه

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

توافق‌های توزیع شد یا اجماع غیر متمرکز (decentralized consensus) یعنی چه؟

اجماع غیر متمرکز بدین معناست که یک عضو از شبکه نمیتواند کل شبکه بلاک چین را کنترل کند. به طور ساده اگر شما بخواهید پولی را برای دوستتان ارسال کنید نیازی نداردید که به واسطه ها و یا شخص سومی مانند visa ، paypal و بانک ها اعتماد کنید.

وقتی از روش‌های سنتی پرداخت استفاده می‌کنید مجبورید از طرف سومی بخواهید تا مسئولیت انجام تراکنش را به عهده بگیرد، به عنوان مثال بانک‌ها جزو این دسته هستند. آن‌ها سوابق این تراکنش‌ها را در حساب هر مشتری ذخیره می‌کنند.

یا مثلا اگر علی برای محمد ۱۰۰ دلار بفرستد، طرف سوم یا واسطه، ۱۰۰ دلار را از حساب علی کم می‌کند و به حساب محمد اضافه می‌کند. هر دو طرف به این طرف واسطه اطمینان می‌کند تا این کار را درست انجام دهد.

با آمدن بیت کوین و سایر ارزهای دیجیتال، حالا هر کس یک کپی از دفتر کل (بلاک چین) دارد و دیگر نیازی به اعتماد به طرف سوم نیست چرا که خودتان می‌توانید به صورت مستقیم اطلاعات را تایید کنید.

منبع xblockchain.me

آشنایی با دو اصطلاح اثبات کار و اثبات سهام

مطالب بیشتر

  1. کار اتریوم 2 به کجا خواهد کشید؟
  2. حرکت کاردانو و اتریوم از اثبات کار به سمت اثبات سهام

دیدگاهتان را بنویسید