الگوریتم اثبات زمان (Proof of time) یکی از الگوریتم های اجماع به شمار می رود که از طریق یک سیستم رای گیری اعتبارسنجی شبکه را انتخاب کرده و بر روی مدت زمانی که یک اعتبارسنجی شبکه در داخل شبکه فعال بوده و همچنین شهرت آن تمرکز می کند. در این مطلب با ما همراه باشید تا در مورد این الگوریتم صحبت کنیم، همچنین تفاوت الگوریتم اثبات کار را با الگوریتم اثبات زمان بررسی نماییم.
الگوریتم اثبات زمان چیست؟
الگوریتمهای اجماع فرآیندهایی هستند که در آن اعتباردهندهها (همچنین به عنوان گرهها یا ماینرها شناخته میشوند) در یک شبکه بلاک چین بر روی وضعیت فعلی شبکه توافق دارند. این کار عمدتا مستلزم توافق در مورد اینکه آیا تراکنش ارائه شده توسط اعتبارسنجی معتبر است یا خیر می باشد. تراکنشهای تقلبی یا نادرست توسط شبکه رد میشوند، با این فرض که تمام اعتبارسنجیها منصفانه و بدون قصد مخرب عمل میکنند. اعتبارسنجی ها برای ارسال تراکنش های دقیق و معتبر با ارز دیجیتال پاداش می گیرند، در حالی که عوامل مخرب بسته به پروتکل اجماع جریمه می شوند.
اعتبارسنجیها باید انرژی خود را از طریق سختافزار گرانقیمت برای اعتبارسنجی تراکنشها صرف کنند و در صورت موفقیت، توکن های جدیدی به دست میآورند. اگر آنها بدخواهانه عمل کنند، چیزی به دست نمی آورند و زیان ناشی از انرژی هدر رفته در ارائه معامله تقلبی یا نادرست است.
الگوریتم اثبات زمان یا Proof-of-time یک الگوریتم اجماع است که از یک سیستم رأی گیری برای انتخاب اعتبارسنجی شبکه استفاده می کند و بر روی مدت زمانی که یک اعتبارسنجی شبکه در داخل شبکه فعال بوده و همچنین شهرت آن تمرکز می کند. این پروتکل توسط آنالوگ (Analog) توسعه داده شده است و مبتنی بر اثبات سهام نمایندگی (DPoS) است که یک نسخه اصلاح شده از PoS است.
الگوریتم اثبات زمان به دفتر کل آن به عنوان Timechain اشاره می کند و با استفاده از امتیاز رتبه بندی، تابع تاخیر قابل تأیید (VDF) و نشانه های شرط بندی شده برای تعیین اینکه چه کسی می تواند یک تراکنش جدید را به دفتر کل اضافه کند، کار می کند. سیستم رتبه بندی با دادن امتیاز به اعتبارسنجی شبکه بر اساس سن و عملکرد گذشته آنها کار می کند. اعتبارسنجی ها به دلیل قابل اعتماد بودن و فعال بودن در شبکه برای مدت طولانی تری امتیاز بیشتری دریافت می کنند. قرار دادن مقدار بیشتری از توکنها نیز احتمال انتخاب اعتبارسنجی را افزایش میدهد.
PoT مشابه DPoS است زیرا کاربران در شبکه تصمیم میگیرند که کدام نماینده میتواند بلوک بعدی را تأیید کند. با این حال، تفاوت هایی در روند رای گیری وجود دارد، به طوری که PoT دارای چندین مرحله رای گیری است. در مرحله اول رایگیری، اعتبارسنجیها که به عنوان انتخاب کنندگان زمان شناخته میشوند، بلوکی را ارسال میکنند که حاوی دادههایی از جمله تراکنشهایی است که باید به Timechain اضافه شوند. اگر بلوک پذیرفته شود، بلوک اعتبارسنجی می شود و تمام تراکنش های داخل بلوک در حال پردازش هستند.
انتخاب کنندگان زمان از طریق یک فرآیند گزینش انتخاب میشوند که به امتیاز رتبهبندی انتخاب کنندگان و تعداد نشانههای شرطبندی شده نگاه میکند. این فرآیند از این اطلاعات و همچنین VDF برای انتخاب تصادفی یک انتخابگر زمان استفاده میکند و تنها یکی میتواند در هر زمان انتخاب شود.
انتخاب کنندگان زمان همچنین یک VDF را اجرا می کنند تا تعیین کنند که آیا برای افزودن یک بلوک جدید به Timechain انتخاب شدهاند یا خیر. اگر آنها انتخاب شده باشند، بلوک را تأیید می کنند، یک اثبات VDF ایجاد می کنند و هر دو داده را به بقیه گره ها در Timechain ارسال می کنند.
در مرحله دوم، اثبات بلوک و VDF به 1000 انتخاب کننده زمان دیگر ارسال می شود تا قبل از اضافه شدن به Timechain دوباره بررسی شوند. اگر اکثر اوقات انتخاب کنندگان با پذیرش تراکنش موافقت کنند، به زنجیره زمانی اضافه می شود.
در واقع الگوریتم اثبات زمان (PoT) یک الگوریتم اجماع غیرمتمرکز است که با انتخاب اعتباردهنده ها متناسب با امتیازات رتبه بندی و سهام ثابت آنها کار می کند. امتیاز رتبه بندی یک معیار وزن دهی عددی است که الگوریتم به هر اعتبارسنجی بر اساس تجربه تاریخی آن (دقتی که گره به دادههای رویداد اعتبار میدهد) و تجربه اعتبارسنجیهای دیگر با گره، اختصاص میدهد.
از سوی دیگر، سهام ثابت مکانیزمی است که در آن همه اعتباردهندهها مقدار مساوی از توکنهای ANLOG (دارایی بومی پلتفرم) را برای شرکت در فرآیند اجماع به اشتراک میگذارند. برخلاف اثبات سهام معمولی (PoS) که در آن گرهها باید مقادیر زیادی از توکنها را برای توافق در نظر بگیرند، مکانیسم PoT منصفانه است. هر گره میتواند بهعنوان اعتبارسنجی شرکت کند، مشروط بر اینکه مقدار ثابتی از توکنهای ANLOG را در نظر گرفته باشد و امتیاز رتبهبندی را جمعآوری کند.
الگوریتم اثبات اعتبار مکانیسم دیگری برای دستیابی به اجماع است که می توانید آن را مطالعه کنید.
اگر بخواهیم دقیق تر مکانیسم الگوریتم اثبات زمان را شرح دهیم باید گفت PoT یک فرآیند دو مرحلهای است که در هسته آن رای دادن نرم و سخت را شامل میشود. در طول مرحله رای گیری نرم، یک انتخاب کننده زمان انتخابی (اعتبار کننده) بلوکی را پیشنهاد می کند که در Timechain (دفتر کل رویداد مبتنی بر آنالوگ) گنجانده شود. در حالی که تمام گرههای زمانی آنلاین میتوانند طرح های بلوک را ارسال کنند، تنها یک انتخابگر از طریق یک فرآیند تصادفی انتخاب میشود که تابع تاخیر قابل تأیید (VDF) را بر اساس امتیاز رتبه بندی و سهام ثابت آن ترکیب میکند.
برای هر دور اجماع (که اسلات نیز نامیده می شود) هر نود زمانی با اجرای یک فرآیند VDF تعیین می کند که آیا به عنوان پیشنهاد دهنده انتخاب شده است یا خیر. در صورت انتخاب، انتخابگر زمان، دادههای رویداد ارسالشده را جمعآوری میکند، امضای ناشر را تأیید میکند، و اثباتهای VDF را تولید میکند. سپس تراکنش هش شده را در کنار یک اثبات VDF برای بقیه گره های زمانی در شبکه پخش می کند.
این فرآیند مرحله رای گیری سخت را آغاز می کند، جایی که کمیته ای متشکل از 1000 گره زمانی (که از طریق VDF نیز انتخاب می شود) تعیین می کند که آیا تراکنش معتبر است یا خیر. هر یک از 1000 گره زمانی، اثبات های VDF، دوبار خرج کردن و سایر مسائل مربوط به بلوک پیشنهادی را بررسی می کند. اگر بلوک پیشنهادی معتبر باشد، گره های زمانی آن را (با پذیرش آن) تایید می کنند.
اگر بیش از دو سوم از 1000 گره زمانی (667 گره زمانی تراکنش ها را تایید کنند)، بلوک به Timechain اضافه می شود.
Timechain, Time nodes and Time Electors
الگوریتم اثبات زمان توسط Analog توسعه داده شده است و برای درک نحوه عملکرد این پروتکل، باید برخی از اصطلاحات مرتبط را به شرح زیر درک کنید:
Timechain: دفتر کل زنجیره آنالوگ (شبکه اصلی)
Time nodes (گرههای زمانی): گرهها/اعتبارسنجیهایی در زنجیره هستند که در تأیید بلوکی که به زنجیره زمانی متصل میشوند شرکت میکنند. (هر چه گرههای رتبهبندی شده بالاتر باشند، احتمال مشارکت آنها در اعتبارسنجی بلوک بیشتر میشود.)
Time electors: انتخابگرهای زمان یک گره ویژه هستند که بلوک های داده را به Timechain پیشنهاد می کنند. این انتخابگر زمان در ابتدای الگوریتم اثبات زمان انتخاب می شود. گره هایی که می خواهند به عنوان انتخاب کننده زمان انتخاب شوند، باید امتیاز رتبه بندی داشته باشند و مقدار ثابتی از توکن های ANLOG را به اشتراک بگذارند. (هر چه امتیاز بالاتر باشد، احتمال انتخاب آنها بیشتر می شود.) فقط یک انتخاب کننده یکبار برای هر بلوک در یک شکاف زمانی معین انتخاب می شود.
VDF چیست؟ VDF چه نقشی در اثبات اجماع زمانی دارد؟
VDF (تابع تأخیر قابل تأیید) سیستمی از توابع محاسباتی است که به انتخاب گره های زمانی طبق یک فرآیند تصادفی کمک می کند.
به زبان ساده، این یک تابع محاسباتی است که اعتباردهنده ها باید انجام دهند تا انتخاب شوند. این تابع محاسباتی به مقدار متوسطی از توان محاسباتی نیاز دارد (هرکسی میتواند به راحتی بررسی کند که آیا روش محاسباتی پس از در دسترس قرار گرفتن پاسخ صحیح است) و بر زمان اجرا تمرکز میکند. (از آنجایی که اعتبارسنجیها باید تابع را به صورت متوالی و بدون هیچ «میانبر» حل کنند.)
بنابراین، VDF به حذف گرههای زمان دادههای جعلی برای حل تابع محاسبه کمک میکند و در عین حال احتمال پذیرش نتیجه نادرست VDF را به حداقل میرساند زیرا دادههای ورودی قبل از صدور اعتبارسنجی اعتبارسنجی میشوند. نتیجه نهایی پس از محاسبه VDF.
شناخت الگوریتم های بلاک چین برای کاربران رمزارزها بسیار مهم است. می توانید این مطلب را در لینک مربوطه بخوانید.
چرا اثبات زمان (PoT)مهم است؟
ایجاد اجماع غیرمتمرکز که با استفاده از روشهای اجماع مختلف مانند اثبات کار (PoW) و اثبات سهام نمایندگی (DPoS) انجام میشود، یکی از ویژگیهای جذاب بلاک چین است. این مکانیسمهای اجماع برای اطمینان از اینکه شرکتکنندگان نسخههای یکسانی از فایلهای پایگاه داده توزیع شده دارند، طراحی شدهاند. اکنون مسئله این است که چرا به الگوریتم اثبات زمان به عنوان مکانیزم اجماع نیاز دارید؟
اجماع غیرمتمرکز تنها ویژگی مهمی است که هر بلاک چین باید داشته باشد. این اجازه می دهد تا شبکه شفاف و تغییرناپذیر باشد. در یک اجماع غیرمتمرکز، همه گرهها باید فرصتهای منصفانه (برابر) در هنگام بروزرسانی دفتر کل داشته باشند. نباید هیچ مانعی برای مشارکت در فرآیندهای اجماع وجود داشته باشد.
در حالی که میتوانید استدلال کنید که PoW به هر گرهای اجازه میدهد تا به عنوان ماینر شرکت کند، از این نظر محدودکننده است که گرهها باید منابع محاسباتی زیادی را صرف کنند که در نهایت باعث سلب حق امتیاز بازیکنان کوچکتر میشود. به این ترتیب، موانع ورود در زنجیرههای فعال PoW همچنان بالاست.
از طرف دیگر، PoS مطمئناً از نظر سرعت تراکنش ها و مقیاس پذیری، از زنجیره های دارای PoW پیشرفته تر است. با این حال، چالش سهگانه را به خوبی حل نمیکند، بهویژه وقتی صحبت از امنیت و تمرکززدایی به میان میآید زیرا شبکه را متمرکز میکند و تنها به چند گره (مصرفکنندگان بزرگ) اجازه میدهد در فرآیند اجماع مشارکت کنند.
به دلیل مسائل ذکر شده، آنالوگ اجماع PoT را از پایه ایجاد کرده است. برخلاف PoW که در آن تولید بلوک به سخت افزار گران قیمت متکی است، الگوریتم اثبات زمان از امتیازات رتبه بندی و سهام ثابت استفاده می کند. به این ترتیب، هر کاربری با سهام ثابت و امتیاز رتبهبندی میتواند بلوکهایی را در شبکه پیشنهاد و تأیید کند.
پروتکل PoT نیز برخلاف PoW که با طولانیترین قانون زنجیره با زمانهای نهایی احتمالی مشخص میشود، هرگز فورک نمیکند. مهمتر از همه، فرآیندهای تصادفی PoT مانند محاسبات VDF (که در آن کاربران خودشان خودشان را انتخاب می کنند) شفاف هستند و اطمینان حاصل می کنند که همه کاربران شانس یکسانی برای مشارکت در اجماع دارند.
تفاوت الگوریتم اثبات زمان و اثبات سهام
در اثبات سهام (PoS) کاربران توکنها را به اشتراک میگذارند و توکنهای اضافی را برای ارسال تراکنشهای معتبر دریافت میکنند در حالی که بخشی را برای ارسال تراکنشهای اشتباه از دست میدهند.
در پروتکلهای اثبات زمان (PoT) اصل یکسان است، اعتبار رسانها توکنهای اضافی را برای ارسال تراکنشهای معتبر دریافت میکنند اما توکنهایی را برای ارسال تراکنشهای نادرست یا مخرب از دست میدهند.
در حالی که PoS و PoT شباهت هایی دارند اما آنها دو پروتکل بسیار متفاوت هستند.
PoS و PoT شباهت هایی دارند. اولاً، هر دوی آنها به تأییدکنندگان نیاز دارند که هنگام تأیید تراکنش ها، توکن ها را به عنوان وثیقه بگذارند، با سهام بالاتر، شانس انتخاب شدن را افزایش می دهد. تفاوت اصلی در سیستم رتبهبندی و رایگیری است که توسط الگوریتم اثبات زمان استفاده میشود و به دنبال آن یک تأیید اضافی توسط 1000 اعتبارسنجی قبل از ارسال تراکنش به دفتر کل انجام میشود.
PoS محبوب ترین و آشناترین گزینه است که توسط Solana، Polkadot، Cardano و Ethereum 2.0 استفاده می شود. وقتی صحبت از مزایا به میان میآید، هر دو سیستم از کاربران میخواهند به جای صرف انرژی، توکنها را به اشتراک بگذارند که هر دو آنها را جایگزینهای کارآمد برای اثبات کار (PoW) میکند. این همچنین می تواند به عنوان یک نقطه ضعف عمل کند زیرا بازیگران مخرب با دسترسی به تعداد زیادی از منابع مالی می توانند از نظر تئوری کنترل شبکه را در دست بگیرند.
نتیجه گیری
در طول چند سال گذشته، بخش بلاک چین پیشرفت های شگرفی داشته و جذابیت بیشتری به دست آورده است. با این حال، قبل از اینکه فناوری به جریان اصلی تبدیل شود، مسائلی مانند قابلیت همکاری و مقیاسپذیری که این بخش را تحت تأثیر قرار میدهند باید حل شود.
آنالوگ معتقد است که این مسائل را می توان از طریق یک پروتکل اجماع کاملاً غیرمتمرکز و بدون هیچ مانعی برای ورود (الگوریتم اثبات زمان) حل کرد. به جای اعتبارسنجیهایی که توان محاسباتی را صرف میکنند یا مقادیر زیادی از توکنها را برای پیشنهاد و تأیید بلوکها صرف میکنند، فرآیند PoT هیچ مانعی برای ورود ندارد. این بدان معنی است که هر گره می تواند به عنوان انتخابگر زمان یا گره زمانی بپیوندد و شرکت کند.