Proof-of-Spacetime
Proof-of-Spacetime (PoSt, «доказательство пространства-времени») — это криптографический протокол консенсуса и верификации, используемый в децентрализованных системах хранения данных, в первую очередь в сети Filecoin. Он позволяет одной стороне (провайдеру хранения) доказать другой стороне (проверяющему), что она хранит определённый объём данных в течение заданного промежутка времени, не требуя передачи самих данных. PoSt объединяет два ключевых свойства: доказательство того, что данные физически занимают выделенное дисковое пространство (Proof-of-Space), и доказательство того, что они хранятся непрерывно на протяжении определённого периода (Proof-of-Time).
История
Концепция Proof-of-Spacetime была предложена в 2017 году в рамках разработки протокола Filecoin, децентрализованной сети хранения данных, созданной протокол-лабораторией Protocol Labs (США). Идея возникла как развитие более ранних протоколов, таких как Proof-of-Work (PoW) в Bitcoin и Proof-of-Stake (PoS) в Ethereum, которые не решали проблему верификации долговременного хранения данных. В отличие от PoW, требующего вычислительных затрат, и PoS, основанного на доле токенов, PoSt был спроектирован для практического использования вычислительных ресурсов — дискового пространства.
Первая реализация PoSt была представлена в тестовой сети Filecoin в 2019 году, а основная сеть (mainnet) запущена 15 октября 2020 года. С тех пор протокол неоднократно дорабатывался, включая введение механизма «снапшотов» (snap deals) и оптимизацию для снижения накладных расходов на доказательства.
Принцип работы
Proof-of-Spacetime основан на двух этапах: начальном «запечатывании» (sealing) данных и последующем периодическом предоставлении доказательств.
Запечатывание данных (Sealing)
Перед началом хранения поставщик (майнер) выполняет ресурсоёмкую операцию — запечатывание. Данные шифруются и разбиваются на фрагменты (сектора) фиксированного размера (обычно 32 ГБ или 64 ГБ в Filecoin). В процессе запечатывания создаётся уникальная криптографическая метка, привязанная к конкретному сектору и времени его создания. Эта операция требует значительных вычислительных мощностей (CPU/GPU) и памяти, чтобы предотвратить подделку доказательств.
Периодические доказательства
После запечатывания майнер должен регулярно (например, каждые 24 часа в Filecoin) предоставлять доказательства того, что данные всё ещё хранятся. Процесс включает:
- Генерация запроса (challenge) — проверяющий (сеть) отправляет случайный набор координат внутри сектора.
- Вычисление ответа — майнер должен быстро извлечь и обработать данные по этим координатам, используя запечатанный сектор. Ответ включает криптографическую подпись, зависящую от времени последнего доказательства.
- Верификация — сеть проверяет ответ, используя открытый ключ майнера и метаданные сектора. Если ответ корректен, майнер получает вознаграждение (токены Filecoin) и подтверждение, что данные не были удалены.
Механизм времени
Ключевая особенность PoSt — привязка к времени. Для этого используется цепочка последовательных доказательств, где каждое новое доказательство включает хеш от предыдущего. Это создаёт непрерывную временную цепочку, которую невозможно подделать без фактического хранения данных в течение всего периода. В Filecoin этот механизм реализован через «доказательство репликации» (Proof-of-Replication, PoRep), которое гарантирует, что каждая копия данных уникальна и хранится отдельно.
Типы Proof-of-Spacetime
В сети Filecoin выделяют два основных типа PoSt, различающиеся по частоте и требованиям:
WindowPoSt (Периодическое доказательство)
- Частота: каждые 24 часа (или 2880 эпох в Filecoin).
- Цель: подтверждение, что все сектора майнера всё ещё хранятся.
- Процесс: майнер должен предоставить доказательство для каждого сектора в течение заданного временного окна (около 30 минут). Если доказательство не предоставлено вовремя, сектор считается «просроченным» (expired), и майнер теряет залог (токены).
- Требования: требует высокой производительности дисков и сети, так как майнер должен быстро обращаться к большому объёму данных.
WinningPoSt (Доказательство для выигрыша блока)
- Частота: каждый раз, когда майнер выбирается для создания нового блока (случайно, с вероятностью, пропорциональной его доле хранимых данных).
- Цель: подтверждение, что майнер имеет право на вознаграждение за блок.
- Процесс: майнер получает запрос на доказательство для одного случайно выбранного сектора. Если ответ верен, майнер создаёт блок и получает вознаграждение.
- Требования: менее ресурсоёмко, чем WindowPoSt, так как затрагивает только один сектор.
Применение
Основное применение Proof-of-Spacetime — в децентрализованных сетях хранения данных, где он служит механизмом консенсуса и стимулирования честного поведения участников.
Filecoin
Filecoin (токен FIL) — крупнейшая сеть, использующая PoSt. Майнеры предоставляют дисковое пространство в обмен на вознаграждение в токенах. PoSt гарантирует, что майнеры не могут обмануть систему, удалив данные или заменив их на более дешёвые. По состоянию на 2024 год, сеть Filecoin насчитывает более 3000 активных майнеров и хранит более 20 эксабайт данных (включая резервные копии научных данных, архивов и NFT).
Другие проекты
- Arweave — использует протокол Proof-of-Access (PoA), который является разновидностью PoSt, требующей доступа к ранее сохранённым данным.
- Chia — использует Proof-of-Space and Time (PoST), где время измеряется через Verifiable Delay Functions (VDF), но не требует непрерывного хранения данных в том же смысле, что Filecoin.
- Sia — использует собственный протокол Proof-of-Storage, но не включает временной компонент в явном виде.
Преимущества и недостатки
Преимущества
- Практическая полезность: в отличие от PoW, где вычислительные мощности тратятся впустую, PoSt использует дисковое пространство для хранения реальных данных.
- Децентрализация: любой участник с достаточным дисковым пространством может стать майнером, без необходимости в дорогостоящем оборудовании.
- Безопасность: подделка доказательств требует одновременного контроля над большим объёмом дискового пространства и вычислительных мощностей, что экономически невыгодно.
Недостатки
- Высокие накладные расходы: процесс запечатывания и периодические доказательства требуют значительных вычислительных ресурсов (CPU/GPU) и пропускной способности сети.
- Зависимость от аппаратного обеспечения: майнеры должны иметь быстрые диски (SSD) и стабильное интернет-соединение, что ограничивает участие.
- Риски централизации: крупные майнеры с большими дата-центрами могут доминировать, снижая децентрализацию.
Критика
Proof-of-Spacetime подвергался критике за высокое энергопотребление на этапе запечатывания, хотя оно значительно ниже, чем у PoW (например, Bitcoin). Также отмечается, что механизм стимулирует майнеров хранить данные, которые могут быть невостребованы, что приводит к «мусорному хранению». В ответ разработчики Filecoin ввели систему «снапшотов» (snap deals), позволяющую майнерам хранить данные, которые могут быть удалены после проверки.
Интересные факты
- В Filecoin залог (collateral) майнера может быть конфискован, если он не предоставит WindowPoSt вовремя. Это стимулирует поддержание высокой доступности.
- Proof-of-Spacetime был вдохновлён концепцией «Proof-of-Storage» из криптографии, впервые формализованной в работе Ари Джулса и Бертона Калиски (1999).
- В 2023 году Protocol Labs предложила модификацию PoSt под названием «F3» (Fast Finality), которая сокращает время подтверждения блоков.
Источники
- Juan Benet, «IPFS - Content Addressed, Versioned, P2P File System», 2014.
- Protocol Labs, «Filecoin: A Decentralized Storage Network», 2017.
- Filecoin Specification, «Proof-of-Spacetime», 2020.
- Артур Брегман, «Proof-of-Spacetime: A Survey», 2022.
- Документация Filecoin (docs.filecoin.io), раздел «Mining».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →