Открыть сервис

Proof of History

Proof of History (PoH, с англ. — «доказательство истории») — это криптографический протокол и механизм консенсуса, используемый в блокчейн-системах для верификации последовательности событий и упорядочивания транзакций без необходимости ожидания подтверждения от других участников сети. В отличие от классических механизмов Proof of Work (PoW) и Proof of Stake (PoS), PoH не является самостоятельным консенсусным алгоритмом, а выступает вспомогательным инструментом, который повышает пропускную способность и снижает задержки в сети. Наиболее известная реализация PoH применяется в блокчейне Solana.

История возникновения

Идея Proof of History была впервые предложена в 2017 году Анатолием Яковенко, сооснователем проекта Solana. Яковенко, ранее работавший в компании Qualcomm над системами сжатия видео и распределёнными вычислениями, столкнулся с проблемой масштабируемости блокчейнов. В традиционных системах (например, Bitcoin) каждый узел должен самостоятельно проверять все транзакции и договариваться о времени их совершения, что приводит к значительным задержкам. PoH был задуман как способ создать «криптографические часы», которые позволяют узлам сети согласовывать порядок событий без необходимости обмена большим количеством сообщений.

Первая реализация PoH была представлена в whitepaper проекта Solana в 2018 году. В 2020 году основная сеть Solana (Mainnet Beta) была запущена, и PoH стал ключевым элементом её архитектуры. С тех пор алгоритм привлёк внимание исследователей и разработчиков, хотя его применение ограничено в основном экосистемой Solana.

Принцип работы

Proof of History основан на использовании криптографической функции, которая генерирует последовательность хешей, каждый из которых зависит от предыдущего. Этот процесс напоминает «цепочку» (chain), где каждый новый хеш включает в себя метку времени и данные о предыдущем состоянии. В отличие от блокчейна, где блоки создаются дискретно, PoH генерирует непрерывный поток хешей, который служит доказательством того, что определённые события произошли в определённом порядке.

Основные шаги

  1. Генерация последовательности: Специальный узел (лидер) запускает функцию хеширования, например SHA-256, и последовательно вычисляет хеши: H0 → H1 → H2 → ... → Hn. Каждый новый хеш вычисляется на основе предыдущего: Hi = hash(Hi-1, data), где data — это произвольные данные (например, номер транзакции или метка времени).
  2. Верификация: Любой другой узел может проверить корректность последовательности, пересчитав хеши. Если последовательность верна, это доказывает, что между двумя хешами прошло определённое количество вычислительных операций, а значит, и время.
  3. Встраивание транзакций: Лидер включает в поток хешей информацию о транзакциях. Каждая транзакция получает уникальный индекс в последовательности, что фиксирует её порядок. Другие узлы могут проверить, что транзакция была добавлена в конкретный момент времени, не обращаясь к другим узлам.

Отличие от PoW и PoS

  • Proof of Work: Требует от майнеров решения сложных математических задач, что потребляет много энергии и времени. PoH не требует решения задач — он лишь фиксирует время.
  • Proof of Stake: Определяет, кто создаёт следующий блок, на основе доли монет. PoH не заменяет PoS, а работает вместе с ним: PoS выбирает лидера, а PoH генерирует временную метку.
  • PoH как дополнение: В Solana PoH используется в паре с механизмом консенсуса Tower BFT (разновидность Practical Byzantine Fault Tolerance), который использует временные метки PoH для ускорения принятия решений.

Архитектура и реализация

PoH реализован в блокчейне Solana как часть его базовой архитектуры. Ключевые компоненты:

  • Лидер (Leader): Узел, который в данный момент генерирует последовательность PoH. Лидер выбирается с помощью механизма Proof of Stake. Он отвечает за создание новых хешей и включение транзакций.
  • Валидаторы (Validators): Другие узлы сети, которые проверяют корректность последовательности PoH и подтверждают транзакции. Валидаторы не обязаны генерировать свои последовательности — они лишь верифицируют работу лидера.
  • Поток (Stream): Непрерывная последовательность хешей, которая записывается в память и может быть разделена на «слоты» (slots) — временные интервалы, в течение которых лидер обрабатывает определённое количество транзакций.
  • Верификация: Каждый валидатор может независимо пересчитать хеши, чтобы убедиться, что лидер не нарушил порядок. Если валидатор обнаруживает ошибку, он может инициировать смену лидера.

Технические детали

  • Хеш-функция: Используется SHA-256, но в теории может быть заменена на любую криптостойкую функцию.
  • Скорость: Solana способна обрабатывать до 50 000 транзакций в секунду (TPS) благодаря PoH, что значительно выше, чем у Bitcoin (около 7 TPS) или Ethereum (до 15 TPS).
  • Затраты: PoH не требует значительных вычислительных ресурсов, так как хеширование — относительно быстрая операция. Однако лидер должен иметь достаточную производительность для генерации потока в реальном времени.

Применение

Proof of History в первую очередь используется в блокчейне Solana, где он является основой для масштабирования. Solana применяет PoH для:

  • Упорядочивания транзакций: Без необходимости ждать подтверждения от других узлов, что снижает задержки.
  • Синхронизации времени: Узлы могут согласовывать время событий без использования внешних часов (например, NTP).
  • Сокращения объёма данных: Поскольку PoH фиксирует порядок, валидаторам не нужно хранить полную историю транзакций — достаточно проверить последовательность хешей.

Помимо Solana, идеи PoH исследуются в других проектах, таких как Near Protocol (использует похожий механизм Nightshade) и Avalanche (использует суб-секундные подтверждения). Однако PoH остаётся уникальной разработкой Solana.

Преимущества и недостатки

Преимущества

  • Высокая пропускная способность: PoH позволяет обрабатывать тысячи транзакций в секунду, что делает блокчейн пригодным для децентрализованных приложений (dApps) с высокой нагрузкой.
  • Низкие задержки: Время подтверждения транзакции в Solana составляет около 400 миллисекунд, что сопоставимо с централизованными платёжными системами.
  • Энергоэффективность: В отличие от PoW, PoH не требует интенсивных вычислений, что снижает энергопотребление.
  • Простота верификации: Любой узел может быстро проверить последовательность хешей, не выполняя сложных расчётов.

Недостатки

  • Централизация лидера: В текущей реализации Solana лидер, генерирующий PoH, может оказывать влияние на порядок транзакций, что создаёт риски цензуры. Для смягчения этой проблемы используется ротация лидеров.
  • Уязвимость к атакам: Если лидер будет скомпрометирован, он может нарушить последовательность хешей. Однако это компенсируется механизмами консенсуса.
  • Зависимость от аппаратного обеспечения: Для генерации PoH в реальном времени требуется мощное оборудование, что может ограничивать децентрализацию.
  • Ограниченное применение: PoH не является универсальным решением и эффективен только в системах с высокой пропускной способностью и низкой задержкой.

Критика и альтернативы

Proof of History подвергается критике со стороны сообщества блокчейн-разработчиков за потенциальную централизацию. Некоторые эксперты утверждают, что PoH нарушает принцип децентрализации, так как лидер получает контроль над временной меткой. В ответ разработчики Solana указывают на то, что лидер выбирается случайным образом и может быть заменён, если ведёт себя недобросовестно.

Альтернативой PoH является механизм DAG (Directed Acyclic Graph), используемый в IOTA и Hedera Hashgraph, который также позволяет упорядочивать транзакции без глобальных часов. Другой подход — Sub-second finality в Avalanche, где консенсус достигается за счёт повторных голосований.

Интересные факты

  • Название «Proof of History» было выбрано, чтобы подчеркнуть, что алгоритм создаёт «историю» событий, а не просто доказывает их выполнение.
  • Solana — один из немногих блокчейнов, который использует PoH в производственной среде. По состоянию на 2024 год сеть обработала более 100 миллиардов транзакций.
  • Анатолий Яковенко, создатель PoH, ранее работал над системами сжатия видео в Qualcomm, что повлияло на его подход к оптимизации времени.

Источники

  • Whitepaper Solana: «Solana: A new architecture for a high performance blockchain» (2018).
  • Официальная документация Solana Labs.
  • Статья «Proof of History: A Clock for Blockchain» на сайте Medium.
  • Материалы конференции Blockchain Expo (2020).
  • Аналитические отчёты CoinDesk и Cointelegraph о Solana.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →