در طی این سالها الگوریتمهای متعددی به منظور افزایش اطمینان از معاملات و دقت بالا در انجام آنها طراحی و ارائه شدهاند که یکی از این الگوریتمها، الگوریتم گواه اثبات تاریخچه میباشد.
گواه اثبات تاریخچه (Proof of History) یک مفهوم مهم در حوزه شبکههای بلاکچین و رمزارزها است. در شبکههای بلاکچین، ارائه روشی قابل اعتماد برای ترتیببندی رخدادها و ثبت تاریخ اجرای آنها یک چالش بزرگ میباشد. به عبارت دیگر، نیاز است تا بتوانیم به طور قابل اعتماد، ترتیب زمانی رخدادها را در یک شبکه بلاکچین مشخص نماییم. بر همین اساس، در اینجا به مفهوم گواه اثبات تاریخچه میپردازیم که این مفهوم مرتبط با الگوریتمی است که بتواند تاریخ و زمان رخدادها را به صورت مستقل و قابل اعتماد ثبت کند.
آنچه در این مطلب می خوانید:
- الگوریتم گواه اثبات تاریخ چیست؟
- ویژگی ها و مزیت های الگوریتم اثبات تاریخ
- چرا این الگوریتم بوجود آمد؟
- کدام ارز دیجیتال از الگوریتم اثبات تاریخ استفاده میکند؟
- الگوریتم اثبات تاریخ چگونه کار میکند؟
- الگوریتم های اثبات تاریخ کدام ها هستند؟
- History چه نقشی در اجماع شبکه سولانا دارد؟
- مشکلات الگوریتم اثبات تاریخ
الگوریتم گواه اثبات تاریخ چیست؟
الگوریتم اثبات تاریخچه را میتوان نوعی ساعت رمزنگاری شده بر بستر بلاکچین دانست که این مکانیزم تمام تراکنشهای شبکه را با یک تأیید دیجیتالی به شکل هش علامتگذاری میکند و زمان اجرای آن را نشان میدهد. به این ترتیب، تمام نودهای شبکه قادر به این خواهند بود که تمام درخواستهای لحظهای بقیه نودها را برای عملیاتهای گذشته نادیده بگیرند و در عوض بر روی پروسه اجرای تراکنشهای لحظهای تمرکز کنند.
در الگوریتم گواهی اثبات تاریخچه، از توابع هش مبتنی بر زمان استفاده میشود. این توابع مقادیری که بر اساس زمان ورودی (مانند تاریخ و زمان) محاسبه میشوند را تولید میکنند. توابع هش بر اساس زمان محاسبه شده و دادههای ورودی را بدست میآورند. مرحله اصلی الگوریتم گواهی اثبات تاریخچه، ارائه یک اثبات زمان معتبر و قابل اعتماد برای رخدادها است. این اثبات زمان میتواند به عنوان شاهد برای رخدادها و ترتیب آنها در شبکه به کار رود. بدین وسیله میتوان ترتیب رخدادها را در شبکه به طور قابل اعتمادی تعیین کرد.
ویژگی ها و مزیت های الگوریتم اثبات تاریخ
الگوریتم اثبات تاریخچه (Proof of History algorithm) دارای ویژگیها و مزایای متعددی است که آن را به یک ابزار مهم در شبکههای بلاکچین تبدیل میکند. برخی از ویژگیها و مزایای این الگوریتم شامل موارد زیر است:
- قابلیت اثبات: الگوریتم اثبات تاریخچه قابلیت اثبات تراکنشها را فراهم میکند. با استفاده از توابع هش مبتنی بر زمان، میتوان به صورت قابل اعتماد، تاریخ و زمان رخدادها را ثبت کرد. این اثبات میتواند به عنوان شاهد زمانی برای رخدادها و ترتیب آنها در شبکه استفاده شود.
- قابلیت اطمینان: الگوریتم اثبات تاریخچه قابلیت تضمین اطمینان در ترتیب زمانی رخدادها را دارد. با استفاده از این الگوریتم، تاریخچه رخدادها قابل اعتماد و قابل اثبات میشود و هرگونه تغییر در ترتیب زمانی برای حملات و تقلب را مشکل میکند.
- اثبات ترتیب زمانی: با استفاده از این الگوریتم، میتوان به صورت قابل اعتماد ترتیب زمانی وقایع را تعیین و مشخص نمود. این ویژگی بسیار مهم است، به ویژه در زمینههایی مانند معاملات مالی و قراردادهای هوشمند که نیاز به تعیین ترتیب زمانی دارند.
- کارایی بالا: این الگوریتم به صورت محاسباتی کارایی بالایی دارد. استفاده از توابع هش برای محاسبه زمان و تولید مقادیر هش، عملیات سریع و موفقی را فراهم میکند.
- استفاده به عنوان الگوریتم واسط: الگوریتم اثبات تاریخچه میتواند به عنوان یک الگوریتم واسطه در کنار سایر الگوریتمهای بلاکچین مانند Proof of Stake و Proof of Work مورد استفاده قرار گیرد. این الگوریتم به توانایی اثبات ترتیب زمانی رخدادها کمک میکند و در بهبود و بهینهسازی سایر الگوریتمها و پروتکلهای مربوطه نقش دارد.
چرا این الگوریتم بوجود آمد؟
علت اصلی ایجاد الگوریتم PoH برطرف کردن مشکلات برچسب زمانی (Timestamp) بود. منظور از برچسب زمانی سازوکار مشخص در یک شبکه بلاکچین برای تعیین ترتیب زمانی بلاکها است. این الگوریتم مانند سایر الگوریتمهای موجود به منظور افزایش کیفیت و اعتماد بوجود آمده است. الگوریتم PoH با استفاده از توابع هش و توابع مبتنی بر زمان، تاریخچه رخدادها را به صورت قابل اعتماد و قابل اثبات، ثبت میکند. به این شکل، ترتیب زمانی رخدادها به صورت قابل اعتماد و قابل اثبات تعیین میشود. این الگوریتم قابلیت اطمینان و کارایی بالایی دارد که مشخصاً به عنوان یک الگوریتم کاربردی در کنار سایر الگوریتمهای بلاکچین مانند PoW و PoS مورد استفاده قرار میگیرد.
کدام ارز دیجیتال از الگوریتم اثبات تاریخ استفاده میکند؟
در حال حاضر، الگوریتم اثبات تاریخ (Proof of History) در شبکه ارز دیجیتال Solana مورد استفاده قرار میگیرد. Solana یک شبکه بلاکچین متن باز و قابل مقیاس است که با هدف ارائه سرعت بالا و هزینه کمتر در اجرای تراکنشها طراحی شده است. الگوریتم Proof of History در Solana برای ثبت ترتیب زمانی رخدادها و اعتمادسازی آنها استفاده میشود. در عملکرد اصلی این ارز دیجیتال، الگوریتم اثبات سهام سولانا با الگوریتم اثبات تاریخ ترکیب میشود و یک الگوریتم اجماع ترکیبی منحصر به فرد را ارائه میکند. در این الگوریتم ترکیبی PoH سرعت بلاکچین را تضمین نموده و در عین حال امنیت آن را با غیرمتمرکز نگه داشتن آن برقرار میکند.
الگوریتم اثبات تاریخ چگونه کار میکند؟
الگوریتم اثبات تاریخ (Proof of History algorithm) در شبکههای بلاکچین مانند ارزهای دیجیتال برای ایجاد ترتیب زمانی قابل اعتماد و قابل اثبات بین تراکنشها و بلاکها استفاده میشود.
اگر بخواهیم نحوه عملکرد الگوریتم اثبات تاریخ را تشریح کنیم، به ترتیب مراحل زیر خواهد بود.
- ایجاد زنجیره اثباتهای زمان: در ابتدا، یک اثبات زمان اولیه تولید میشود که این اثبات زمان اولیه معمولاً با استفاده از یک تابع هش از یک مقدار تصادفی ایجاد میگردد. این اثبات زمان اولیه در واقع نقطه آغاز اعتمادسازی است.
- ایجاد بلاکها و تراکنشها: در شبکه بلاکچین، بلاکهای حاوی تراکنشها ایجاد میشوند. هر بلاک شامل اطلاعاتی مانند تراکنشها، هش قبلی بلاک و اثبات زمان مربوط به بلاک است. برای ایجاد ترتیب زمانی، این اطلاعات باید به صورت متوالی و قابل اثبات در بلاکها قرار گیرند.
- تأیید اثبات زمان: در شبکه بلاکچین، اثبات زمان هر بلاک باید توسط سایر شرکتکنندگان شبکه تأیید شود. این تأیید معمولاً با محاسبه تابع هش برای اثبات زمان و اطلاعات دیگر بلاک انجام میشود. اگر تأیید صورت گیرد، بلاک به زنجیره اصلی اضافه شده و ترتیب زمانی به صورت قابل اثبات تغییر میکند.
- الگوریتم اثبات تاریخچه به عنوان منبع ترتیب زمانی: به این ترتیب در شبکه بلاکچین، الگوریتم اثبات تاریخچه به عنوان یک منبع ترتیب زمانی قابل اعتماد و قابل اثبات عمل میکند که با استفاده از اثباتهای زمان در زنجیره، ترتیب زمانی رخدادها قابل تشخیص و اثبات خواهد بود.
در برخی از ارزهای دیجیتال هم معمولاً الگوریتم اثبات تاریخچه با الگوریتم اثبات کار (Proof of Work algorithm) یا الگوریتم اثبات سهام (Proof of Stake algorithm) ترکیب میشود تا امنیت و قابلیت اعتماد شبکه بهبود یابد.
الگوریتم های اثبات تاریخ کدام ها هستند؟
در ارزهای دیجیتال، الگوریتمهای اثبات تاریخچه (Proof of History algorithms) به عنوان یکی از عناصر اصلی برای ایجاد ترتیب زمانی قابل اعتماد و قابل اثبات استفاده میشوند. الگوریتمهای اثبات تاریخچه ممکن است با الگوریتمهای اثبات کار (Proof of Work)، الگوریتمهای اثبات سهام (Proof of Stake) یا سایر الگوریتمهای قابل اطمینان ترکیب شوند. در ادامه، برخی از الگوریتمهای اثبات تاریخچه رایج در ارزهای دیجیتال را ذکر میکنیم.
Proof of Work (PoW): الگوریتم اثبات کار که در بیت کوین استفاده میشود، از عملیات محاسباتی سنگین برای اثبات زمان استفاده میکند. در این الگوریتم، ماینرها باید محاسبات پیچیده را انجام دهند تا بلاک جدید ساخته شده و اثبات زمان ارائه شود. این الگوریتم مبتنی بر قدرت محاسباتی بوده و نیازمند مصرف انرژی بالایی است.
Proof of Stake (PoS): در الگوریتم اثبات سهام، حامیان شبکه بر اساس تعداد ارزهایی که در اختیار دارند، انتخاب میشوند. حامیان برای ایجاد بلاکها و اثبات زمان، ارزهای خود را به عنوان سهام در شبکه قرار میدهند. این الگوریتم کارایی بالاتری نسبت به Proof of Work داشته و مصرف انرژی کمتری دارد.
Proof of Authority (PoA): در الگوریتم اثبات اعتبار، یک گروه منتخب از شرکت کنندگان به عنوان صاحبان اعتبار و اثبات کنندگان زمان مشخص میشوند. این گروه مسئول ایجاد بلاکها و اثبات زمان هستند و نیاز به محاسبات پیچیده یا مصرف انرژی بالایی ندارند.
Proof of Elapsed Time (PoET): در این الگوریتم، هر شرکت کننده در شبکه به صورت تصادفی تعیین میشود. شرکت کننده با انتظار زمانی خود، بلاک را ایجاد میکند و اثبات زمان را ارائه میدهد.
Proof of Capacity (PoC): در الگوریتم PoC، شرکتکنندگان بر اساس ظرفیت ذخیرهسازی دادههای خود انتخاب میشوند و برخلاف Proof of Work که بر اساس قدرت محاسباتی است، Proof of Capacity بر حسب فضای ذخیرهسازی داده تعیین میشود.
History چه نقشی در اجماع شبکه سولانا دارد؟
Proof of History (PoH) در اجماع شبکه سولانا نقشهای متعددی دارد که میتوان آنها را به عنوانهای زیر تقسیم کرد:
پروتکل گلف استریم برای حذف ممپول ها
در شبکه سولانا، پروتکل گلف استریم (Gulf Stream protocol) با استفاده از Proof of History، برای حذف نیاز به ممپولها (memepools) استفاده میشود. معمولاً در شبکههای بلاکچین، تراکنشها در ممپولها جمعآوری شده و سپس به بلاکها اضافه میشوند؛ اما در سولانا، توسط Proof of History، تراکنشها بر اساس ترتیب زمانی قابل اعتمادی که توسط PoH ارائه میشود، به صورت مستقیم به بلاکها اضافه میشوند که این روش منجر به افزایش سرعت و کارایی شبکه میشود.
پروتکل توربین جهت انتشار اطلاعات به نود ها
PoH در سولانا به عنوان پروتکل توربین شناخته میشود. این پروتکل برای انتشار اطلاعات به نودها در شبکه سولانا استفاده میگردد که تضمین میکند، تمام نودهای شبکه ترتیب زمانی یکسانی داشته باشند و بتوانند به صورت همزمان اطلاعات لازم را دریافت و پردازش کنند.
الگوریتم Tower BFT برای صحت تراکنش ها
در شبکه سولانا، PoH به عنوان بخشی از الگوریتم Tower BFT استفاده میشود. Tower BFT یک الگوریتم اجماع است که تراکنشها را تأیید و صحت آنها را بررسی میکند. PoH در این الگوریتم نقش مهمی دارد؛ زیرا برای تأیید و اثبات ترتیب زمانی صحیح تراکنشها استفاده میشود.
مشکلات الگوریتم اثبات تاریخ
الگوریتم اثبات تاریخ علاوه بر اینکه از مزایا و ویژگیهای مثبتی بهرهمند است، برخی مشکلات خاص در برابر آن قرار دارند که نمونههایی از این مشکلات را میتوان در مواردی که در ادامه خدمتتان عرض میکنیم نیز خلاصه نمود.
اعتماد به منبع خارجی: الگوریتم Proof of History برای ایجاد تاریخچه زمانی قابل اعتماد به یک منبع خارجی نیاز دارد. این موضوع میتواند باعث وابستگی شبکه به منبع خارجی شده و احتمال تغییر تاریخچه توسط آن شود. این میتواند به آسیب امنیتی و از دست رفتن اعتماد شبکه منجر گردد.
مقیاسپذیری: برای اجرای عملیات Proof of History در شبکههای بزرگ، نیاز به منابع قابل توجهی مانند ظرفیت ذخیرهسازی و قدرت پردازش بالا است که این میتواند باعث محدودیت مقیاسپذیری شبکه شود و مشکلاتی مانند افزایش هزینهها و زمان پاسخگویی شبکه را ایجاد کند.
حملات 51 درصد: اگر یک شخص یا یک گروه از افراد بتوانند بیش از 50 درصد از قدرت محاسباتی شبکه را کنترل کنند، در این هنگام میتوانند حملاتی مانند حمله “double-spending” یا “selfish-mining” را انجام دهند. Proof of History به تنهایی قادر به جلوگیری از این حملات نبوده و نیاز به الگوریتم اجماع دیگری مانند Proof of Stake دارد.
مصرف انرژی بالا: برخی از الگوریتمهای اثبات تاریخ نیازمند مصرف انرژی بالایی میباشند، به ویژه الگوریتمهایی که بر پایه محاسبات رمزنگاری مبتنی بر مدل محاسباتی Proof of Work استوار هستند. این موضوع میتواند منجر به هدر رفت انرژی شود.
همانطور که متوجه شدید، به طور کلی، گواه اثبات تاریخچه به شبکههای بلاکچین این امکان را میدهد تا عملیات را به صورت سریعتر، امنتر و با مقیاسپذیری بهتری انجام دهند. با این حال، همچنان نیاز به توسعه و بهبود الگوریتمها و مکانیسمهای مرتبط با Proof of History وجود دارد تا به چالشها و مشکلات مربوطه پاسخ داده شده و امنیت و کارایی شبکههای بلاکچین آن بهبود یابد.
مررسی از توضیحات الگوریتم اثبات تاریخ
عالی بود ممنون کریپتونگار 👍🙏❤️🌹
جالب وکاربردی❤❤❤❤
جالب بود. میدونسنتم پروف آو ورک و پروف آو استیک داریم. اما از الگوریتم اثبات تاریخ نشنیده بودم.
بنظرم معروفترین الگوریتم اثبات همون الگوریتم sha256 باشه که مال بیتکوین هست.
ممنون
حریف ندارید😍😍😍
عالی بود
سلام موضوع آموزش ارز دیجیتال
سپاس فراوان از مطالب آموزشی عالیتون
چقدر گسترده و پیچیده شده بلاکچین. این الگوریتم ها بودن یا تازه دارن زاده میشن؟
موفق باشید
برکت الهی درزندگیتان جاری