شبکه سولانا برای کارآمدتر کردن بلاک چین، اقدام به ترکیب نوآوری های Tower BFT, Proof of Replication و Gulf Stream با اثبات تاریخ Proof of History(PoH) کرده است تا بتواند بلاک چین جدیدی را طراحی کند. الگوریتم اثبات تاریخ می تواند روشی را فراهم کند تا به کمک رویدادها در 2 تاریخ مختلف، یک سری محاسبات را انجام دهد. PoH از توابع نوشته شده امنیتی، به کمک ورودی ها برای پیش بینی خروجی ها استفاده می کند و به این صورت فرآیند خروجی را به طور کامل مدیریت می کند. این تابع روی یک هسته اجرا می شود، بنابراین خروجی قبلی آن به عنوان ورودی جریان محسوب می شود و به طور دوره ای خروجی جریان را می تواند ضبط کند و سپس خروجی را مجددا محاسبه و تایید کند.
همچنین این طرح از مقیاس بندی افقی پشتیبانی می کند در نتیجه امکان همگام سازی چندین ژنراتور Proof of History با ترکیب کردن آنها وجود دارد و حالت توالی از هر ژنراتور به مولد دیگر وجود دارد که در نتیجه دستیابی به مقیاس بندی افقی مولد اثبات تاریخ را فراهم می کند. البته الگوریتم اثبات تاریخ، ساز و کار اجماعی ندارد اما راهی برای بهینه کردن زمان لازم جهت تایید معاملات بر اساس زمانبندی می باشد.
الگوریتم اثبات تاریخ در سولانا
سولانا با هدف پشتیبانی از قراردادهای هوشمند و برنامه های غیرمتمرکز با کارمزدی پایین، تمرکز زدایی و مقیاس پذیری بالا ایجاد شده است. ارز دیجیتال سولانا در پرداخت کارمزد تراکنش ها، امکان رای دادن کاربران دارای ارز SOL و استیکینگ استفاده می شود. برخی از ارزهای دیجیتال مانند بیت کوین برای تایید تراکنش ها و ایجاد بیت کوین جدید از یک مکانیسم اجماع به اثبات کار استفاده می کند. برخی دیگر از ارزهای دیجیتال مثل کاردانو از مکانیسم اجماع اثبات سهام استفاده می کند اما سولانا ترکیبی از اثبات سهام و اثبات کار استفاده می کند که همان اثبات تاریخ می باشد.
تراکنش های بلاک چین سولانا برای هش شدن از عملکرد هش SHA256 بهره می برند. تابع هش مورد استفاده در سولانا، در قبال دریافت ورودی ها، خروجی های منحصر به فرد غیرقابل پیش بینی را می تواند تولید کند و هر خروجی را به عنوان ورودی هش بعدی به کار می گیرد. با الگوریتم اثبات تاریخ می توان رخ دادن یک رویداد در لحظه ای خاص از زمان را اثبات کرد. اثبات تاریخ، تعدادی مراحل متوالی برای ارزیابی دارد که در نهایت باعث می شود یک تابع تاخیر قابل تایید منحصر به فردی شود که در نهایت به صورت عمومی و توسط همه افراد و به صورت کاملا موثر به تایید برسد.
همچنین سولانا به زودی یک اعتبارسنجی بتا عمومی را راهاندازی میکند که مشوقی برای اجرا می باشد. علاوه بر این سولانا عموم مردم را به چالش میکشد تا محدودیتهای شبکه Solana را آزمایش کنند و در عین حال توکن هایی برای انجام این کار به دست آورند. الگوریتم اثبات تاریخ به سولانا برای بهینه کردن زمان بلوک، انتشار بلوک و ذخیره آن در دفتر کل کمک می کند. البته بلاک چین سولانا علاوه بر فناوری نوین الگوریتم اثبات تاریخ چندین فناوری نوین دیگر همچون الگوریتم اجماع Tower BFT، موتور پردازش موازی در Smart contract به نام Sealevel و یک پایگاه بایگانی داده در شبکه بلاک چین به نام Archivers نیز دارد. مجموع این فناوری های نوین در سولانا منجر به مقیاس پذیری بسیار بالا در این شبکه شده است.
Proof of History
PoH به تاییدکنندگان شبکه اجازه می دهد تا آنچه را که در گذشته اتفاق افتاده است را مشاهده کنند. PoH برای یک دفتر کل طراحی شده است که مدت زمان بین رویدادها و پیام مرتب سازی پیش بینی می کند که هر گره در شبکه بتواند به آن تکیه کند. در الگوریتم اثبات تاریخ توالی ضبط شده را می توان تنها روی یک هسته CPU تولید کرد و خروجی را می توان به صورت موازی تأیید کرد.
یکی از سخت ترین مشکلات در سیستم های توزیع شده توافق به موقع است. در واقع، برخی استدلال میکنند که ضروریترین ویژگی الگوریتم اثبات کار بیت کوین، عملکرد یک ساعت غیرمتمرکز برای سیستم است. در Solana، ما معتقدیم که الگوریتم اثبات تاریخ این راه حل را ارائه می دهد.
نمودارهای الگوریتم اجماع تاریخ، انتظار نمی رود که بتوانند اجماع های در حال تعلیق را پیگیری کنند اما انتظار می رود که بتواند تعداد اجماع های در حال انجام و انجام شده را پشتیبانی کنند و زمانی تایید می کند که بیشتر نودها در شبکه آن را تایید کنند. ورودیهای الگوریتم اثبات تاریخ میتوانند به خود اثبات تاریخ ارجاع داشته باشند. مرجع برگشتی را می توان به عنوان بخشی از یک پیام امضا شده با امضای کاربر درج کرد، بنابراین بدون کلید خصوصی کاربران نمی توان آن را تغییر داد.
الگوریتم های اثبات تاریخ
2 الگوریتم از ویژگی های نگهداری زمان POH استفاده می کنند که عبارتند از: الگوریتم PoS که قابلیت بازیابی شدن را دارد و الگوریتم PoRep که پارتیشن هایی با هر اندازه و یک جریان کارآمد اثبات تکرار می باشد و ترکیب PoRep با PoH از جعل دفاتر با توجه به زمان سفارش و نگهداری جلوگیری می کند.
Proof of History جدید
انتخاب برای مولد PoH جدید زمانی اتفاق می افتد که خرابی ژنراتور PoH شناسایی شده باشد. اعتبارسنجی با بیشترین قدرت رای یا بالاترین کلید عمومی آدرس در صورت وجود تساوی به عنوان مولد PoH جدید ایجاد می شود. اگر رهبر جدید قبل از اینکه اکثریت فوق العاده، تایید شوند شکست بخورد بالاترین اعتبارسنجی بعدی انتخاب می شود بنابراین مجموعه جدیدی از تأییدیه ها مورد نیاز است. برای تغییر آرا، اعتبارسنجی باید در شمارنده توالی PoH بالاتر رای دهد و رای جدید باید حاوی آرایی باشد که میخواهد تغییر دهد در غیر این صورت رای دوم قابل قطع خواهد بود. انتظار می رود تغییر رای طوری طراحی شود که فقط در ارتفاعی اتفاق بیفتد که اکثریت فوق العاده ندارد.
استثناهای زمان اجرا
یک نقص سخت افزاری یا یک اشکال و یا یک خطای عمدی در ژنراتور PoH می تواند باعث شود که یک حالت نامعتبر در شبکه ایجاد کند و امضای ایالتی را منتشر کند که با نتیجه اعتبارسنجی محلی مطابقت ندارد. امضا از طریق شایعات باعث ایجاد دور جدیدی از انتخابات خواهد شد و هر اعتبارسنجی که یک حالت نامعتبر را بپذیرد، اوراق قرضه آنها قطع می شود.
نتیجه گیری
الگوریتم اثبات تاریخ تاثیر مثبتی در رفع چالش تاخیر زمانی توافقات در بلاک چین ها داشته است که توسط شبکه سولانا ایجاد شده است. در واقع الگوریتم اثبات تاریخ برای کمک به الگوریتم اجماع سولانا که POS نام دارد، ایجاد شده است. این الگوریتم امنیت بالایی در حفظ اطلاعات دارد زیرا تابع هش آن یک طرفه می باشد.