Proof of History — алгоритм синхронізації блокчейну Solana

Фото - Proof of History — алгоритм синхронізації блокчейну Solana
У 2018 році розробники Solana представили новий підхід до синхронізації вузлів у блокчейні і назвали його Proof of History. Наразі його активно застосовують не тільки в Solana, а й у таких проєктах, як Arweave та Chainlink.
Синхронізація вузлів — це важливий елемент роботи будь-якого блокчейну. Вони мають вчасно обмінюватися інформацією про стан мережі, щоб забезпечити консенсус. Що швидше відбувається цей процес, то швидше обробляються транзакції.

Поточні показники швидкості блокчейну поступаються рішенням у традиційних фінансах. Наприклад, Bitcoin здатен проводити 6 транзакцій за секунду (TPS), Ethereum — 15, Cosmos — 1400, тоді як Mastercard може обробляти 5 тисяч TPS, а Visa — 24 тисячі.

Одним із рішень для синхронізації вузлів, і водночас швидкості виконання транзакцій, став Proof of History, що розроблений та активно використовується в Solana. За допомогою цього механізму, а також завдяки жорстким вимогам до обчислювальної потужності вузлів Solana вдалося прискорити блокчейн до рекордних показників серед усіх мереж: за заявами розробників, це 65 тисяч транзакцій за секунду!
TPS кожного з блокчейнів. Джерело: supraoracles.com

TPS кожного з блокчейнів. Джерело: supraoracles.com

У цій статті ми розглянемо принцип роботи PoH, приклади використання, а також обмеження цієї технології.

Що таке Proof of History?

Proof of History — це механізм синхронізації блокчейну, який було розроблено Solana Labs у 2018 році.

PoH покращує безпеку та ефективність блокчейнів, особливо тих, які забезпечують високий рівень пропускної здатності. Наприклад, легендарна пропускна здатність Solana, що дозволяє обробляти понад 60 тисяч транзакцій за секунду, забезпечена саме алгоритмом Proof of History.

Щоб зрозуміти, яким є механізм роботи PoH, визначимо такий термін, як timestamp, і розглянемо процес синхронізації часу в децентралізованій мережі.

Синхронізація часу в блокчейні

Щоб будь-яка система добре працювала, всі її складові мають бути синхронізовані. Уявіть, що ви авіадиспетчер. Вам необхідно отримувати миттєву інформацію про рух кожного літака, а також регулювати швидкість та висоту їхнього польоту. Якщо в когось із пілотів відставатиме або поспішатиме годинник, це може спричинити серйозні проблеми в авіації.

У традиційних системах це питання вирішується за допомогою централізованого годинника. Кожен смартфон або інший пристрій звіряє час, підключаючись до інтернету. Але як вирішити це питання у блокчейні?

У блокчейні використовується принцип додавання часових міток (timestamp). Вони визначають момент, коли було видобуто певний блок, і є одним із інструментів забезпечення консенсусу.

Синхронізація часу в більшості блокчейнів заснована на негайному корегуванні з використанням медіани timestamp. Це значення з'являється як результат надання локального часу всіма вузлами та визначення їхньої медіани.

Однак синхронізація за медіаною timestamp є повільним процесом: кожен вузол має відправити дані про локальний час, потім система повинна визначити медіану і відправити її вузлам. Щоб вирішити цю проблему, можна використовувати Proof of History, який дозволяє вбудовувати ці часові мітки в сам блокчейн, застосовуючи VDF (функції затримки, що перевіряються).

Як працює Proof of History?

Блокчейн, що працює за допомогою PoH, генерує timestamp для підтвердження того, що транзакція відбулася в конкретний момент часу. Proof of History пропонує криптографічний метод доказу хронології транзакцій, а також ідентифікацію подій за допомогою Verifiable Delay Functions (VDF).

VDF — це функції, для оцінювання яких потрібний помірний обсяг послідовних обчислень (схоже на майнінг у Proof-of-Work). Після того, як рішення знайдено, будь-який вузол може легко перевірити його валідність.

Рішення дозволяє провайдеру надати доказ того, що на виконання функції було витрачено певну кількість часу. До того ж зробити це так, щоб валідатор міг швидко перевірити результат.

Часова мітка, що згенерована VDF, потім включається в кожен блок блокчейну, забезпечуючи верифікований і незмінний запис хронології здійснення транзакцій. Після додавання блоку у блокчейн він вважається завершеним і не може бути скасований.

Мета VDF — забезпечити мінімальну часову затримку для того, щоб інші вузли отримували миттєвий доступ до інформації. За допомогою VDF можна зрозуміти, коли була здійснена транзакція.

Обмеження Proof of History

Незважаючи на такі переваги Proof of History, як швидкість виконання транзакцій і забезпечення незмінності мережі, технологія таки має певні обмеження. Найважливіші з них:

  • Наявність надійного джерела часу. Надійність timestamp залежить від того, наскільки надійними є джерела часу, що використовуються для їх створення.
  • Високі вимоги до обчислювальної потужності вузлів. PoH передбачає створення та валідацію великої кількості даних. Це обмежує мінімальний поріг для розгортання ноди і робить блокчейн менш децентралізованим.

Наразі Proof of History активно застосовується у блокчейні Solana. Механізм не є окремим алгоритмом консенсусу, а працює разом з іншими. Наприклад, у випадку з Solana — Proof-of-Stake.

Важко сказати, чи зможе технологія Proof of History вийти за межі DeFi та отримати застосування в інших сферах. Теоретично PoH може бути застосована в управлінні ланцюжками постачання, харчовій галузі або медицині. Тобто там, де важлива точність відстежування часу.

Пише про DeFi та криптовалюти через призму технологій.