[ad_1]
اثبات ظرفیت (Proof of Capacity) الگوریتمی در بلاک چین تعدادی از ارزهای دیجیتال است که امکان استفاده از فضای خالی هارد دیسک را برای استخراج ارزهای دیجیتال، فراهم میکند. اکثر ارزهای دیجیتال، امروزه برای تولید بلاک از روش ماینینگ یا همان اثبات کار (Proof of Work) و یا اثبات سهام (Proof of Stake) استفاده میکنند، اما چند ارز دیجیتال نه خیلی شناختهشده هستند که به جای این دو از اثبات ظرفیت استفاده میکنند. در این مقاله با اثبات ظرفیت و چند ارز دیجیتالی که از آن استفاده میکنند، آشنا میشوید.
تابع هش
قبل از توضیح معنی اثبات ظرفیت، نخست بیایید معنی «هش کردن» (Hashing) را مرور کنیم.
هش کردن یا هشینگ به فرآیندی گفته میگردد.که در آن یک عملگر ریاضی به نام «تابع هش» (Hash Function)، اطلاعات ورودی مثل حروف و اعداد و تصویر و نظایر آنها را به خروجی رمزگذاریشده تبدیل میکند. به تابع هش، «تابع درهمساز» هم گفته میگردد.
به عنوان مثال یک تابع هش میتواند کلمه «سلام» را دریافت کند و به عنوان خروجی این عبارت را تحویل بدهد:
«bda۱fa۴۸۳۴۵۳۳۶۶۱۸۷۴۱fd۲c۴bc۰۲۸۰۹eb۰۹۹c۴۹a۹b۰۲fb۵۰۵۶۴۰۱ab۶d۴dc۳e۶»
به خروجیِ تابع هش، «هش» (Hash) میگویند و به این عمل یعنی استفاده از تابع هش برای ایجاد هش، هش کردن یا «هشینگ» (Hashing) گفته میگردد.
حالا بیایید ببینیم فرآیند هش کردن یا به اصطلاح هشینگ چگونه انجام میگردد.
هر کسی که در رمزنگاری و ریاضیات تخصص داشته باشد، میتواند با استفاده از این علوم برای خود تابع هش بسازد. هم اکنون انواع زیادی تابع هش وجود دارد و آن را به روشهای متفاوتی میتوان ساخت، اما در اینجا نیت داریم به عنوان نمونه نحوه کار الگوریتم شناختهشده SHA-256 را توضیح بدهیم که پرکاربردترین تابع هش دنیاست.
توابع هش معتبر، هر مقدار ورودی را به یک رشته متنی با طول ثابت تبدیل میکنند.
همانطور که در عکس بالا هم مشاهده میکنید، برای تابع هشِ استاندارد اهمیتی ندارد که ورودی شما چقدر بزرگ یا کوچک است. خروجی همیشه دارای طول ثابت خواهد بود. این مساله زمانی اهمیت مییابد.که با تعداد زیادی داده و اطلاعات سر و کار داشته باشید. در نتیجه، اساساً به جای رهگیری و ذخیره اطلاعات ورودی که میتوانند بسیار زیاد و بزرگ باشند، میتوانید تنها هش را ذخیره کرده و آن را ردیابی کنید.
ضمناً استفاده از یک خروجی با طول ثابت سبب افزایش امنیت میگردد. چون کسی که سعی در رمزگشایی هش داشته باشد، نمیتواند با دیدن خروجی تشخیص دهد که ورودی ما به چه صورت بوده است.
هر دو روش اثبات کار و اثبات ظرفیت برای کار به توابع هش وابسته هستند. تابع هش، تابعی یکسویه است؛ به این معنی که با این تابع میتوان بهآسانی اطلاعات را وارد و هش را پردازش کرد، اما برعکس آن یعنی دریافت هش و به دست آوردن اطلاعات اصلی (ورودی) کار فوقالعاده سختی است. در این تابع داده ورودی میتواند هر نوع دادهای باشد اما متن خروجی (رمزنگاریشده)، رشتهای از اعداد و حروف است.
اثبات کار
اثبات کار یا همان ماینینگ که در ارزهای دیجیتال زیادی مثل بیت کوین از آن استفاده میگردد. شباهت زیادی به روش اثبات ظرفیت دارد، با این فرق که روش اثبات کار نیاز به تجهیزات تخصصی و گرانقیمتتری دارد. این تخصصی بودن سبب میگردد.که بعد از پایان کار استخراج کوینهای اثبات کار، پیدا کردن کاربردهای دیگری برای این تجهیزات کار بسیار مشکلی باشد.
در کنار این، روش استخراج اثبات کار روش بسیار پر سروصدا و پرمصرفی است و فشار زیادی به دستگاهها وارد میکند. به همین علت، باید بهروش دورهای آنها را تعمیر و قطعات خراب یا منسوخشده را با قطعات نو جایگزین کرد.
مراحل استخراج در روش اثبات کار:
- ماینرها تراکنشها را جمعآوری کرده و در یک بلاک قرار میدهند.
- تمام اطلاعات موجود در بلاک که در بر گیرنده هش بلاک قبلی هم میگردد. برای تولید یک (مقدار) هش جدید از یک تابع هش عبور میکند.
- بعد ازآن ماینرها برای پیدا کردن مقدار هش صحیح با سریعترین سرعت ممکن، یک عدد را در هدر (سربرگ) بلاک (Block Header) تغییر میدهند و هم برای پیدا کردن هش صحیح تلاش کرده و اعداد را امتحان میکنند.
- اولین ماینری که بتواند با قدرت پردازش خود مقدار صحیح هش را پیدا کند، آن را برای بقیه شبکه ارسال میکند و بدین گونه یک بلاک به بلاک چین متصل میگردد.
اثبات ظرفیت: یک توضیح ساده
در روش اثبات ظرفیت، بهجای تغییر مکرر اعداد در هدر بلاک و استفاده از هش برای پیدا کردن راهحل، هارد دیسک خود را به اصطلاح ثبت (Plot) میکنید. ثبت کردن یا پلاتینگ (Plotting) به عملیات پردازش و ذخیره جوابهای احتمالی برابره بلاکها روی کامپیوتر، حتی پیش از شروع استخراج گفته میگردد. در این روش، پاسخ احتمالی برابره بلاکها روی هارد دیسکهای موجود در شبکه ذخیره میگردد.و اگر هارد دیسک شما حاوی پاسخ برابره بلاک باشد، برنده (پاداش) آن بلاک خواهید بود. بدین گونه، هر چقدر هارد دیسک دارای فضای بیشتری باشد، شانس بیشتری برای دریافت پاداش بلاک وجود دارد.
مثال
فرض کنید هارد دیسک خود را پر از بلیتهای لاتاری کردهاید. اما در هارد دیسک در مقابل ظرفیتی که دارد، فقط تعداد محدودی بلیت جا میگردد. بعد از اعلام شماره بلیت، بررسی میکنید تا بفهمید چه کسی بیشترین اعداد مشترک با شماره برنده اعلامشده را دارد. اگر شما بیشترین ارقام مشترک را با شماره برنده داشته باشید، پاداشی به شما تعلق خواهد گرفت. البته بهترین قسمت ماجرا این است که بلیتهای شما بعد از اعلام نتیجه باطل نخواهند شد و میتوانید برای هر بلاک جدید دوباره از آنها استفاده کنید.
اثبات ظرفیت: یک توضیح فنی
عملیات اثبات ظرفیت در بر گیرنده دو بخش است: ثبت یا پلات کردن هارد دیسک و استخراج بلاکها.
کار ثبت یا پلات کردن فایلهای خاص راجع به شما بسته به ظرفیت هارد دیسکهایتان شاید چندین روز یا حتی چندین هفته طول بکشد. پلاتینگ از یک تابع هش بسیار کند به نام شبال (Shabal) استفاده میکند که با تابع هش SHA-۲۵۶ بیت کوین که ماینرها بهسرعت آن را به کار میبرند، مفرق است. از آنجا که محاسبه هشهای تابع Shabal کار سختی است، نودهای شبکه آنها را از قبل پردازش کرده و روی یک هارددیسک ذخیره میکنند. این کار همان ثبت کردن یا پلاتینگ هارد دیسک است.
پلاتینگ
زمان ثبت کردن یا ساختن یک فایل پلات، چیزی به نام نانس (Nonce) را میسازید. نانسها با هش مکرر اطلاعاتی مثل شماره شناسایی شما، ساخته میشوند. هر چه فضای ذخیرهسازی بزرگتر باشد، مقدار نانسهایی که میتوانید ذخیره کنید هم بیشتر خواهد بود. با هر نانس میتوان نهایتاً ۸۱۹۲ هش ساخت. این هشها به صورت جفتی سازماندهی میشوند و هر جفت، اسکوپ (Scoop) نام دارد. به هر اسکوپ شمارهای از ۰ تا ۴۰۹۵ تعلق میگیرد.
به این ترتیب شما در زمان استخراج، اسکوپی با شماره بین ۰ تا ۴۰۹۵ را محاسبه خواهید کرد. فرض کنید که نتیجه محاسبه شما، یک اسکوپ به شماره ۴۲ باشد. کار را با اسکوپ شماره ۴۲ از نانس ۱ شروع میکنید و از داده آن اسکوپ برای محاسبه یک زمان خاص، به نام «ددلاین» (Deadline) استفاده کرده و بعد ازآن این عملیات را برای همه نانسهای موجود در هارد دیسک، تکرار میکنید.
بعد از محاسبه همه ددلاینها، کمترینِ آنها را انتخاب میکنید. ددلاین بیانکننده تعداد ثانیههایی است که باید از زمان تشکیل آخرین بلاک گذشته باشد تا شما بتوانید به تشکیل بلاک بعدی بپردازید. اگر فرددیگری در همین زمان نتوانسته باشد بلاک جدیدی تشکیل دهد، پاداش آن بلاک به شما تعلق میگیرد.
به عنوان نمونه اگر ددلاین شما موقع استخراج ۲۵ ثانیه باشد و هیچکس دیگری در این ۲۵ ثانیه نتواند بلاک جدیدی تشکیل دهد، آنوقت شما این شانس را دارید که بلاک را تشکیل داده و پاداش آن را به خودتان اختصاص دهید.
مزایا و معایب
حالا که با جزئیات و مبانی روش اثبات ظرفیت آشنا شدید، وقت آن است که با بعضی مزایا و معایب استفاده از هارد دیسک برای استخراج هم آشنا شوید:
مزایا
- برای این کار میتوانید از هارد دیسکهای معمولی استفاده کنید و کسی نمیتواند آنطور که درباره بیت کوین شایع است، با خرید ایسیکهای اختصاصی بر شما برجستهی داشته باشد. البته کماکان مقدار حافظه اهمیت دارد.
- مصرف برق در این روش ۳۰ برابر کمتر از استخراج با دستگاههای ایسیک است.
- روش اثبات ظرفیت بسیار غیرمتمرکزتر از اثبات کار است، چون در کامپیوتر هر شخص، حداقل یک هارد دیسک نصب شده است. برای این کار حتی میتوان از هارد دیسک تلفنهای همراه اندروید هم استفاده کرد.
- در این روش نیازی ندارید به شکل مداوم سختافزار را بهروزرسانی کنید. هارددیسکهای قدیمی میتوانند اطلاعات را بهمناسبی هارددیسکهای جدید ذخیره کنند.
- میتوانید بعد از پایان استخراج، هارد دیسکهای خود را فرمت کرده و آنها را برای کاربرد اصلیشان به کار ببرید.
معایب
- محبوبیت روش اثبات ظرفیت میتواند به رقابتی دیگر در خرید و تولید هارد دیسکها و افزایش قیمت آنها منجر شود. امروزه افراد از هارد دیسکهای ترابایتی استفاده میکنند، ولی این معیار بهتدریج به پتابایت، اگزابایت و زتابایت تبدیل خواهد شد.
- روش اثبات ظرفیت یک فناوری نسبتاً جدید است و هنوز به دقت مورد بررسی و چالش قرار نگرفته است.
- هم اکنون اطلاعات پلات شده در هارد دیسکها هیچ کاربردی غیر از استخراج ندارند. البته طرحهایی برای استفاده از آنها بهعنوان فضای ذخیرهسازی مازاد برای اطلاعات متنباز مهم در دست بررسی است. در این صورت هارد دیسکها میتوانند مقالات ویکیپدیا، وظیفههها و دیگر اطلاعات با ارزش را در خود جای دهند.
- هم اکنون بدافزارهای زیادی در حال استخراج بیت کوین با استفاده از کامپیوترهای دیگران هستند. مطمئن باشید در صورت محبوبیت بیشتر روش اثبات ظرفیت، بدافزارهایی هم برای پلات کردن فضاهای خالی هارد دیسکها ساخته خواهد شد. با این فرق که در این حالت اغلب افراد آگاه نخواهند شد که هکرها دارند از فضای هارد دیسک آنها استفاده میکنند.
آشنایی با ۳ ارز دیجیتال برجسته اثبات ظرفیت
حالا در ادامه ۳ مورد از بزرگترین ارزهای دیجیتالی را که از روش اثبات ظرفیت برای تأیید تراکنشها استفاده میکنند، معرفی میکنیم.
توجه: معرفی این ارزهای دیجیتال به هیچ عنوان پیشنهاد به سرمایهگذاری نیست. بیشتر این ارزهای دیجیتال هنوز در فازهای اولیه خود قرار دارند.
استورج (Storj)
استورج شبکهای بر پایه بلاک چین است که با هدف عرضه فضای ذخیرهسازی غیرمتمرکز خلق شده است. این شبکه هنوز در نخستی راه خود قرار دارد، اما به طور کلی کاربران میتوانند بدون نگرانی از نقض حریم خصوصی و بدون خطر هک شدن یا از بین رفتن اطلاعات، فایلهای خودشان را روی بلاک چین استورج ذخیره کنند.
هرکسی که کامپیوتر شخصی داشته باشد، با استفاده از سرویس ذخیرهسازی غیرمتمرکز میتواند خدمات ذخیرهسازی را عرضه کند. بلاک چین با ذخیره کردن اطلاعات روی نودهای متعدد میتواند در صورت خرابی یک نود، فایلها را توسط نود دیگری بازیابی کند.
البته استورج در مقاله معرفی یا همان وایتپیپر خود از اثبات ظرفیت نام نبرده و نام الگوریتم خود را «اثبات ذخیرهسازی» (Proof of Storage) گذاشته است. این الگوریتم با اثبات ظرفیت کمی فرق دارد اما بهروش کلی سختافزار مورد نیاز برای ساخت بلاک در این شبکه، هارد دیسک است.
برست (Burst)
برست یک از فورکهای ارز دیجیتال Nxt است که از الگوریتم اجماع اثبات ظرفیت استفاده میکند. این کوین در سال ۲۰۱۴ سیستم قراردادهای هوشمند و چند امکان مهم دیگر را هم به ویژگیهایش اضافه کرد. همانطور که در اتریوم و سایر بلاک چینهای عمده میبینیم، قراردادهای هوشمند، ایجاد نرمافزارها و کاربردهای جدید را در این شبکه میسرمیکنند.
این کوین ضمناً از فناوری تنگل (Tangle) که راهی جدید برای انتشار بسیار سریع اطلاعات در شبکه است و در شبکه آیوتا هم به کار میرود، استفاده میکند. یکی دیگر از ویژگیهای مثبت برست کوین امکان معاملات بین بلاک چینی اتمیک (Atomic Cross Chain trading) آن است که با استفاده از آن، کوینهایی که بلاک چین های مفرقی دارند میتوانند بدون نیاز به یک طرف قرارداد سوم مورد اعتماد طرفین، با هم معامله کنند.
این کوین از شبکه لایتنینگ هم پشتیبانی میکند که در آن، کاربران میتوانند کانالهای پرداخت خود را باز کنند و تمام تراکنشهایی که از این کانالها استفاده میکنند بدون کارمزد انجام خواهند شد.
فایل کوین (Filecoin)
فایل کوین که قرار است در سال ۲۰۲۰ افتتاح شود، مثل استورج یک شبکه ذخیرهسازی غیرمتمرکز است که در آن ماینرها با فعالیت در شبکه و در ازای عرضه فضای هارد دیسکشان برای ذخیره یا بازیابی اطلاعات، توکنی به نام فایل کوین دریافت میکنند. آنها این توکنها را با ذخیره اطلاعات مشتریان و پردازش مسائل ریاضی اثبات ظرفیت برای تائید فضای ذخیرهسازی در دسترس خود، در طی زمان به دست خواهند آورد. شانس دریافت کوین و مقدار کارمزد تراکنشها بستگی به مقدار فضای عرضهشده به شبکه از سوی ماینر دارد.
البته فایل کوین هم بهروش مستقیم از اثبات ظرفیت به عنوان الگوریتم اجماع خود نام نبرده است، اما جریان آن کاملاً با اثبات ظرفیت مشابه است.
نودهای افتتاحشده توسط ماینرها با نگهداری از اطلاعات مورد نیاز بلاک چین و اطلاعات ذخیرهسازی شده، شبکه را فعال نگه میدارند. البته آنها برای بالا بردن امنیت شبکه باید مقداری کوین را به صورت امانت در نودهای خود قفل کنند و در صورتی که نتوانند فایلهای ذخیره سازی شده را اثبات کنند این کوینها توسط شبکه ضبط خواهد شد. در این بلاک چین برای تضمین عدم رونویسی دو فایل با اسمهای مشابه، هر فایل اثر انگشت دیجیتال مخصوص خود را دارد.