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

Фото - Proof of History — алгоритм синхронизации блокчейна Solana
В 2018 году разработчики Solana представили новый подход к синхронизации узлов в блокчейне, назвав его Proof of History. Сегодня он активно применяется не только в Solana, но также в таких проектах, как Arweave и Chainlink.
Синхронизация узлов — это важный элемент работы любого блокчейна. Они должны вовремя обмениваться информацией о состоянии сети, чтобы обеспечить консенсус. Чем быстрее происходит этот процесс, тем быстрее обрабатываются транзакции.

Текущие показатели скорости блокчейна отстают от решений в традиционных финансах. Например, Bitcoin способен проводить 6 транзакций в секунду (TPS), Ethereum — 15, Cosmos — 1 400. В то время как 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 и криптовалютах через призму технологий.