Что такое Whitepaper? Объяснение IPFS
Learn what a whitepaper is in crypto, how IPFS works, and why it matters for Web3. Understand content addressing, CIDs, and decentralized storage.
Whitepaper — это основополагающий документ протокола криптовалюты, а Whitepaper InterPlanetary File System (IPFS), написанный Хуаном Бенетом в 2014 году, является одним из наиболее цитируемых технических документов в экосистеме Web3. В этой статье объясняется, что представляет собой Whitepaper как формат документа, а затем на примере Whitepaper IPFS показывается, что именно предлагает протокол и почему это важно.
Если вы столкнулись с IPFS в процессе изучения проекта NFT, инфраструктуры протокола DeFi или инвестиционного тезиса Filecoin и вам потребовалось руководство на понятном языке перед чтением первоисточника, эта статья предоставит вам его. Знание компьютерных наук не требуется.
Основные тезисы
- Whitepaper — это технический документ, который определяет проблему, предлагает решение и описывает архитектуру системы, необходимую для его реализации.
- Whitepaper IPFS был написан Хуаном Бенетом из Protocol Labs и опубликован в 2014 году.
- Межпланетная файловая система (IPFS) — это одноранговый (P2P) протокол для хранения и извлечения файлов с использованием адресации по содержимому, а не по расположению серверов.
- IPFS не является блокчейном. Это распределенная файловая система.
- IPFS и Filecoin — это отдельные проекты: IPFS — это протокол, а Filecoin — уровень стимулирования.
- Контент в IPFS не становится постоянным автоматически. Для сохранения доступа требуется активное закрепление (pinning).
- Сегодня доступ к большей части контента IPFS осуществляется через стандартные браузеры с помощью HTTP-шлюзов.
Содержание
- Что такое Whitepaper?
- IPFS Whitepaper: Обзор и авторство
- Что такое IPFS?
- Как работает IPFS?
- Адресация по контенту и идентификаторы контента (CIDs)
- IPFS против традиционной сети (HTTP)
- Является ли IPFS блокчейном? Объяснение ключевых различий
- IPFS и Filecoin: В чем разница?
- Сохранение данных, закрепление и хранение в IPFS
- Почему IPFS важен: Реальное внедрение
- Ограничения и критика IPFS
- Часто задаваемые вопросы
- Что прочитать дальше
Что такое Whitepaper?
Whitepaper в контексте криптовалюты и технологий представляет собой технический документ, который определяет проблему, предлагает решение и описывает архитектуру системы, необходимую для его реализации. Это использование отличается от правительственных документов, которые являются политическими документами. В криптовалюте Whitepaper является основополагающей технической спецификацией, которую публикует протокол или проект для определения его замысла.
Жанр whitepaper имеет прослеживаемую историю в блокчейне и Web3. Whitepaper Биткоина (Сатоши Накамото, 2008) заложил формат девятистраничным документом, в котором была сформулирована проблема двойной траты, предложено криптографическое решение и описана одноранговая архитектура для ее реализации. Whitepaper Эфириума (Виталий Бутерин, 2013) расширил этот формат, предложив программируемые смарт-контракты на распределенной вычислительной платформе. В следующем году whitepaper IPFS от Хуана Бенетта применил эту же традицию к распределенному хранению файлов. Каждый из этих документов следует одной и той же структурной логике: назвать проблему, предложить архитектуру, сослаться на предыдущие работы, на которых он основан.
Белая книга отличается от лайтпейпера, который представляет собой более краткое и доступное резюме, предназначенное для нетехнической аудитории. Лайтпейпер объясняет концепцию, в то время как белая книга детально описывает архитектуру.
Что содержит Whitepaper
Хорошо структурированная техническая Whitepaper обычно охватывает следующее:
- Аннотация или введение: краткое резюме проблемы и предлагаемого решения
- Постановка проблемы: точное описание технического или системного сбоя, который устраняет протокол
- Предлагаемое решение: основная архитектурная идея, включая ключевые проектные решения
- Техническая архитектура: принцип работы системы, включая её структуры данных и спецификации протокола
- Варианты использования: конкретные сценарии применения предлагаемой системы
- Токеномика (если применимо): как любая связанная криптовалюты стимулирует участие в сети
- Квалификация команды и предыдущие работы: биография авторов и существующие исследования, на которых основывается предложение
Почему проекты в сфере криптовалюта публикуют whitepapers
Проекты публикуют вайтпейперы по четырем основным причинам:
- Подтверждение технической состоятельности: детальный Whitepaper сигнализирует о том, что проект опирается на четкую архитектуру, а не на предположения
- Разъяснение концепции проектирования: разработчикам, оценивающим протокол, необходимо понимать принципы его работы, прежде чем приступать к разработке на его основе
- Привлечение экспертного сообщества: публикация технических спецификаций позволяет исследователям и инженерам выявлять недостатки до развертывания
- Документирование целей для инвесторов и общественности: Whitepaper создает публичную фиксацию того, что проект обязуется выполнить, обеспечивая подотчетность
Как читать Whitepaper криптовалюты
- Сначала прочтите описание проблемы, чтобы понять, какую задачу намерен решить протокол
- Проверьте, логично ли вытекает предложенное решение из описанной проблемы
- Проверьте квалификацию команды и предыдущие работы, на которые они ссылаются
- Изучите раздел технической архитектуры, чтобы оценить целостность проекта
- Если задействован токен, проверьте, соответствуют ли экономические стимулы заявленным целям
IPFS Whitepaper является рабочим примером того, что демонстрирует сильный технический Whitepaper. Следующий раздел подробно описывает его содержание.
IPFS Whitepaper: Обзор и авторство
Уайтпейпер IPFS, написанный Хуаном Бенетом из Protocol Labs в 2014 году, предлагает одноранговую распределенную файловую систему с адресацией по содержимому, предназначенную для замены или дополнения сети на базе HTTP.
Кто написал Whitepaper IPFS
Whitepaper IPFS был написан Хуаном Бенетом, ученым-компьютерщиком и основателем Protocol Labs, и опубликован в 2014 году. Бенет имеет образование в области компьютерных наук Стэнфордского университета, а также является создателем Filecoin и сетевой библиотеки libp2p. Protocol Labs, организация, которую он основал, является компанией, занимающейся исследованиями и разработками, ориентированной на децентрализованную интернет-инфраструктуру. Она поддерживает IPFS, Filecoin и libp2p как проекты с открытым исходным кодом, доступные любому разработчику или организации.
Protocol Labs работает как коммерческая компания, но публикует свои основные протоколы как открытые стандарты. IPFS не принадлежит Protocol Labs в эксклюзивном смысле; это протокол с открытым исходным кодом, в развитие которого вносят вклад разработчики со всей экосистемы.
Что предлагает Whitepaper IPFS: резюме простыми словами
В текущей сети файлы хранятся на серверах, и вы получаете их, переходя по конкретному адресу (URL), который указывает на этот сервер. Whitepaper IPFS предлагает иной подход: вместо поиска файла по его местоположению, вы находите его по его идентификатору. Каждый файл получает уникальный криптографический отпечаток, и любой компьютер в сети, у которого есть этот файл, может предоставить его вам. Ни один сервер не владеет контентом.
Вы можете прочитать оригинальный Whitepaper IPFS) напрямую. В разделах ниже основные концепции объясняются простым языком.
Основные концепции IPFS Whitepaper
- Контентная адресация: поиск файлов по их содержимому, а не по местоположению сервера
- Идентификатор контента (CID): уникальный криптографический отпечаток, присваиваемый каждому файлу в IPFS
- Merkle DAG (направленный ациклический граф): структура данных, которую IPFS использует для организации и связывания фрагментов файлов
- Распределенная хеш-таблица (DHT): уровень маршрутизации, который определяет, на каких узлах хранится тот или иной контент
- Пиринговая (P2P) сеть: получение файлов с любого узла, на котором есть нужный контент, а не с центрального сервера
- IPNS (Межпланетная система имен): изменяемые указатели, обеспечивающие постоянные адреса для обновляемого контента
- Дедупликация данных: идентичные фрагменты имеют один и тот же CID, поэтому одни и те же данные никогда не сохраняются в сети дважды
Что такое IPFS?
Межпланетная файловая система (IPFS) — это протокол с открытым исходным кодом, работающий по принципу peer-to-peer, предназначенный для хранения и обмена данными в распределенной файловой системе. Он был разработан Хуаном Бенетом и поддерживается Protocol Labs. В отличие от традиционного веба, который находит файлы по их местоположению на сервере (URL), IPFS находит файлы по их содержимому, используя уникальный криптографический отпечаток, называемый Идентификатором контента (CID).
IPFS вписывается в более широкую архитектуру децентрализованного веба (Web3), новой интернет-модели, где данные и приложения распределены между множеством узлов, а не контролируются централизованными сущностями, такими как Google, Amazon или Meta. IPFS предоставляет слой хранения и маршрутизации контента, который необходим децентрализованным приложениям для функционирования без зависимости от серверов какой-либо одной компании. NFT метаданные, децентрализованные веб-сайты и активы dApp полагаются на IPFS как на постоянный слой хранения в стеке Web3.
В следующих разделах объясняется, как IPFS достигает этого технически, как она сопоставляется с HTTP и блокчейном, и как выглядит ее внедрение в реальном мире.
Какую проблему решает IPFS?
IPFS устраняет четыре структурных недостатка веба на базе HTTP:
["- Устаревание ссылок: когда сервер выходит из строя или изменяется URL, файл по этому адресу исчезает навсегда","- Цензура: правительство или интернет-провайдер могут заблокировать доступ к серверу, удалив контент из целых регионов","- Узкие места пропускной способности: популярный контент создает концентрированную нагрузку на один сервер, вызывая замедления","- Незаметное изменение данных: файл по URL может быть изменен без какой-либо фиксации изменения, и у читателя нет способа это обнаружить"]
IPFS решает каждую из этих проблем, исключая сервер из процесса получения. Контент хранится в распределенной сети и находится по своему содержимому, а не по местоположению. Полное сравнение HTTP и IPFS приводится в специальном разделе сравнения ниже.
Для чего используется IPFS?
IPFS используется в нескольких категориях приложений в экосистеме Web3:
- Хранилище метаданных NFT: проекты NFT на базе Ethereum хранят изображения и метаданные в IPFS, при этом CID встроен в смарт-контракт для создания защищенной от несанкционированного доступа связи между токеном и его содержимым
- Децентрализованный хостинг веб-сайтов: веб-сайты могут быть опубликованы в IPFS, и доступ к ним можно получить без какого-либо центрального хостинг-провайдера
- Слой данных приложений Web3: децентрализованные приложения хранят офчейн-данные в IPFS, чтобы избежать затрат и ограничений ончейн-хранилища
- Устойчивое к цензуре распространение контента: журналисты и архивисты используют IPFS для публикации контента, который невозможно удалить путем блокировки одного сервера
- Сохранение академических и архивных данных: исследовательские данные и исторические записи могут храниться в IPFS с криптографическим доказательством целостности
Как работает IPFS?
IPFS хранит и извлекает файлы посредством процесса, который включает разделение контента на фрагменты, генерацию криптографических отпечатков для каждого фрагмента и распространение этих фрагментов по одноранговой (P2P) сети без центрального сервера. Если вы знакомы с тем, как одноранговые крипто-протоколы, такие как Litecoin и другие распределенные сети), работают на сетевом уровне, то IPFS следует схожей логике распределенного участия узлов.
Одноранговая сеть: Без центрального сервера
Фундаментальным архитектурным решением, лежащим в основе IPFS, является использование одноранговых (P2P) сетей. В традиционном вебе ваш браузер обращается к конкретному серверу и запрашивает файл по определенному пути. В одноранговой сети любой участвующий компьютер (называемый узлом), на котором хранится файл, может предоставить его вам.
Это различие имеет значение, поскольку оно устраняет единую точку отказа. Если сервер выходит из сети, любой размещенный им HTTP-ресурс становится недоступным. В P2P-сети один и тот же файл можно получить от любого из узлов, хранящих его. IPFS расширяет эту архитектуру, добавляя адресацию по содержимому, чтобы сеть точно знала, какие узлы хранят какие файлы.
Как IPFS хранит и извлекает файл: пошагово
- Файл разделяется на более мелкие фрагменты данных.
- Каждый фрагмент пропускается через криптографическую хеш-функцию, создающую уникальный отпечаток, называемый идентификатором контента (CID).
- Фрагменты связываются друг с другом в структуру данных, называемую Merkle DAG (направленный ациклический граф), где CID корневого узла представляет весь файл.
- CID файла публикуется в распределенной хеш-таблице (DHT), которая фиксирует, какие узлы в сети хранят эти фрагменты.
- Когда другой пользователь запрашивает файл по его CID, IPFS опрашивает DHT, чтобы найти узлы, на которых в данный момент хранятся соответствующие фрагменты.
- Фрагменты извлекаются из этих одноранговых узлов, собираются заново и сопоставляются с исходным CID для подтверждения целостности данных.
В этом процессе не участвует ни один сервер. Любой узел, который хранит данный CID, может предоставить этот контент любому запрашивающему. Это означает, что файл, хранящийся в IPFS, может пережить отключение любого отдельного узла, если хотя бы один другой узел продолжает его хостить.
Merkle DAG: Как IPFS организует данные
Представьте Merkle DAG как дерево из кусочков пазла, где каждый кусочек имеет уникальный идентификатор, основанный на его содержимом, и также записывает идентификаторы всех кусочков, на которые он ссылается. Идентификатор корневого кусочка представляет собой весь собранный пазл. Измените что-либо в пазле, и корневой идентификатор изменится, что сделает любое вмешательство немедленно обнаружимым.
Формально, DAG Меркла (направленный ациклический граф) — это структура данных, где каждый узел идентифицируется своим криптографическим хэшем и ссылается на другие узлы по их хэшам, формируя проверяемую, защищенную от подделки структуру. Поскольку одинаковые фрагменты всегда производят один и тот же CID, IPFS автоматически дедуплицирует данные. Один и тот же контент никогда не хранится в сети дважды.
IPFS относится к категории распределенных файловых систем: систем, в которых данные хранятся и извлекаются через сеть узлов, а не с одного сервера, продолжая линию развития таких систем, как NFS, AFS и модель объектного хранения Git. Git использует тот же основополагающий принцип, где каждый коммит идентифицируется хешем его содержимого, формируя защищенную от несанкционированного доступа цепочку истории. IPFS применяет этот же принцип ко всему хранению контента.
Распределенная хеш-таблица: как IPFS находит контент
Представьте себе распределенную хеш-таблицу (DHT) как распределенную телефонную книгу: вместо одного центрального справочника, в котором указано, кто владеет тем или иным контентом, тысячи узлов хранят по фрагменту индекса. Когда вам нужен файл, вы направляете сети предложение, чтобы узнать, у каких узлов он сейчас находится, и сеть маршрутизирует ваш запрос к нужным пирам.
Формально, DHT — это децентрализованная система маршрутизации, которая сопоставляет идентификаторы контента с пиринговыми узлами, хранящими этот контент в данный момент. IPFS использует алгоритм Kademlia (специфический вариант DHT, разработанный в 2002 году) для этой функции обнаружения узлов и маршрутизации. Подобно BitTorrent, IPFS получает файлы от нескольких узлов одновременно, а не с одного центрального сервера. В отличие от BitTorrent, IPFS спроектирована как постоянный адресуемый слой для открытой сети, а не как инструмент для обмена отдельными торрент-файлами.
Адресация по содержимому и идентификаторы содержимого (CID)
Адресация по содержимому — это ключевое архитектурное новшество, благодаря которому IPFS работает иначе, чем традиционный веб, и понимание этого принципа является ключом к пониманию всего остального в данном протоколе.
Что такое адресация по содержимому?
Представьте себе, как будто вы находите книгу по её ISBN, а не по её месту на полке в конкретном магазине. ISBN идентифицирует книгу по её сути. Содержимое никогда не меняется, независимо от того, какой магазин её предлагает. Место на полке идентифицирует книгу по тому, где она находится в данный момент, и если этот магазин закроется, место на полке становится бесполезным. ISBN остаётся действительным.
Адресация по контенту — это метод поиска файлов, использующий криптографический хеш содержимого файла в качестве его адреса. В отличие от адресации по местоположению, где URL указывает на конкретный сервер и путь, контентный адрес указывает на сами данные и может быть обслужен любым узлом, на котором они хранятся. Ключевое практическое следствие: если содержимое изменится хотя бы на один байт, адрес также изменится. Это означает, что адресация по контенту обеспечивает встроенную проверку целостности данных, так как адрес одновременно является доказательством того, что полученный контент в точности соответствует запрошенному.
Что такое CID в IPFS?
Идентификатор контента (CID) — это уникальный адрес, присваиваемый каждой единице контента, хранящейся в IPFS. Он генерируется путем обработки данных с помощью криптографической хеш-функции. Реальный CID выглядит следующим образом:
QmR7GSQM93Cx5eAg6a6yRzNde1FQv7uL6X1o4k7zrJa3LX
Два идентичных файла всегда производят один и тот же CID. Изменение даже одного байта в файле приводит к совершенно другому CID. Любой узел в сети IPFS может проверить, что полученное им содержимое соответствует запрошенному CID. Если хеши совпадают, содержимое является подлинным и неизменным.
Криптографическая хеш-функция работает как машина для создания цифровых отпечатков: подайте ей любой файл, и она выдаст уникальную строку фиксированной длины, представляющую этот файл. Один и тот же вход всегда производит один и тот же выход, и практически невозможно, чтобы два разных файла произвели один и тот же отпечаток. IPFS пропускает каждый файл и каждый фрагмент через хеш-функцию для генерации CID, поэтому CID служат одновременно и адресами, и проверкой целостности.
IPFS также включает Межпланетную систему имен (IPNS), которая предоставляет мутабельные адреса, позволяющие обновлять постоянную ссылку так, чтобы она указывала на новые версии контента. Это работает по аналогии с тем, как доменное имя веб-сайта остается неизменным даже при смене IP-адреса сервера. Таким образом решается закономерная проблема, связанная с тем, что адресация по содержимому считается непрактичной для контента, требующего обновлений.
Таблица ниже демонстрирует ключевые различия между адресацией по местоположению и контент-адресацией. Полное сравнение IPFS против HTTP представлено в следующем разделе.
| HTTP (на основе местоположения) | IPFS (на основе контента) | |
|---|---|---|
| Адрес указывает на | Конкретный сервер | Сам контент |
| Что происходит при сбое сервера | Файл становится недоступным | Файл доступен с любого закрепленного (pinning) узла |
| Проверка целостности данных | Отсутствует | Несоответствие CID выявляет подделку |
| Устойчивость к цензуре | Низкая: блокировка сервера | Высокая: нет единого сервера для блокировки |
IPFS против традиционного веба (HTTP)
HTTP и IPFS решают одну и ту же фундаментальную проблему (получение данных по сети), но делают противоположные архитектурные выборы относительно того, как идентифицировать и находить эти данные.
| Параметр | HTTP (традиционный веб) | IPFS |
|---|---|---|
| Метод адресации | По местоположению (URL указывает на сервер) | По контенту (CID идентифицирует контент) |
| Источник получения файла | Один назначенный сервер | Любой узел сети (пир), хранящий контент |
| Единая точка отказа | Да: отключение сервера делает файл недоступным | Нет: контент можно получить с любого узла-хранителя |
| Устойчивость к цензуре | Низкая: блокировка сервера или DNS | Высокая: нет центрального сервера для атаки |
| Целостность данных | Не проверяется по умолчанию | CID подтверждает соответствие контента запросу |
| Постоянство контента | Зависит от времени работы сервера | Зависит от активного закрепления (pinning) |
Традиционный веб использует адресацию по местоположению. URL, такой как `https://example.com/file.jpg``, инструктирует ваш браузер связаться с конкретным сервером по конкретному IP-адресу и получить определенный файл по определенному пути. Получаемый вами контент настолько же надежен, насколько и этот сервер. Если сервер становится недоступным, подвергается цензуре или изменяет файл, качество взаимодействия ухудшается или оно полностью прекращается. Это не ошибки в HTTP; это компромиссы, присущие адресации по местоположению.
HTTP оптимизирован для скорости и простоты, поддерживается десятилетиями зрелых инструментов для разработчиков. IPFS отдает приоритет устойчивости и проверяемости ценой устоявшейся экосистемы инструментов. Это разные цели проектирования, которые приводят к разным компромиссам, и ни один из них не является универсально превосходящим. Правильный выбор зависит от того, что требуется конкретному приложению.
Заменяет ли IPFS HTTP?
Нет. IPFS не предназначен для замены HTTP. Сегодня доступ к большей части контента IPFS осуществляется через HTTP-шлюзы, что позволяет пользователям просматривать его в обычном браузере без какого-либо специального ПО. Эти два протокола работают сообща, а не конкурируют друг с другом.
Является ли IPFS блокчейном? Ключевые различия
Нет. IPFS не является блокчейном, и эти две технологии служат фундаментально разным целям, хотя они часто используются вместе в одном и том же стеке приложений Web3.
Блокчейн представляет собой распределенный, неизменяемый реестр, который записывает транзакции в криптографически связанные блоки, поддерживаемый сетью узлов, которые должны достичь консенсуса относительно состояния реестра. Блокчейн разработан для записи произошедших событий и обеспечения защиты этой записи от подделки. Для читателей, желающих получить представление о том, как работает распределенный консенсус на уровне блокчейна, что демонстрирует архитектура блокчейна Cardano) иллюстрирует тот же фундаментальный принцип работы на практике.
IPFS — это распределенная файловая система, которая хранит и извлекает контент с помощью адресации по содержимому. Она не ведет цепочку записей о транзакциях. Она не требует консенсуса между узлами для поиска файлов. У нее нет собственной нативной криптовалюты. Она организует данные в виде Merkle DAG (направленного ациклического графа), а не в виде цепочки блоков.
[{"Blockchain":"блокчейн","Dimension":"Измерение","IPFS":"IPFS"},{"Blockchain":"Цепочка криптографически связанных блоков","Dimension":"Структура данных","IPFS":"Merkle DAG (связывает контент по хэшу)"},{"Blockchain":"Запись транзакций и ведение реестра","Dimension":"Основная цель","IPFS":"Хранение и извлечение файлов"},{"Blockchain":"Только добавление; прошлые записи не могут быть изменены","Dimension":"Изменяемость данных","IPFS":"Адресуется по контенту; новый CID для нового контента"},{"Blockchain":"Большинство блокчейнов требуют нативный токен","Dimension":"Требование к токену","IPFS":"Нет: IPFS не требует криптовалюту"},{"Blockchain":"Использует IPFS для хранения данных, слишком больших для ончейн хранения","Dimension":"Взаимосвязь","IPFS":"Дополняющие: блокчейны используют IPFS для офчейн хранения"}]
Эти две технологии скорее дополняют друг друга, чем являются синонимами. Смарт-контракты NFT на Ethereum, например, обычно хранят метаданные и медиафайлы токена в IPFS. Блокчейн содержит CID, который указывает на файл; IPFS хранит сам файл. Такая схема позволяет хранить большие объемы данных офчейн (где хранение стоит дорого), сохраняя при этом защищенную от несанкционированного доступа связь между токеном и его контентом.
IPFS и Filecoin: В чем разница?
IPFS и Filecoin — это два отдельных проекта, созданные одной и той же организацией, Protocol Labs, но они выполняют разные функции. Путаница между ними — одно из самых распространенных заблуждений в экосистеме Web3.
IPFS — это одноранговый протокол для хранения и получения данных с адресацией по содержимому. Filecoin — это отдельная криптовалюта и сеть стимулирования, которая оплачивает операторам узлов постоянное хранение данных в IPFS. Самый простой способ запомнить различие: IPFS — это инфраструктура; Filecoin — это платежная система.
По умолчанию контент IPFS доступен только до тех пор, пока хотя бы один узел активно его размещает. В системе отсутствуют встроенные экономические стимулы для того, чтобы узел хранил контент, который он не создавал и не запрашивал. Если каждый узел, хранящий определенный CID, перестанет его размещать, этот контент станет недоступен, даже если адрес CID по-прежнему существует.
Filecoin решает эту проблему, выплачивая провайдерам хранилищ вознаграждение в токенах FIL за обязательство хранить определенные данные в течение согласованных периодов, что подтверждается криптографическими доказательствами. Провайдеры хранилищ вносят залог, который аннулируется в случае неспособности обеспечить сохранность данных, указанных в контракте, что создает экономическую гарантию неизменности и постоянства хранения.
| Характеристика | IPFS | Filecoin |
|---|---|---|
| Тип | Протокол с открытым исходным кодом | Сеть для хранения данных и криптовалюта |
| Назначение | Хранение и извлечение файлов с контентной адресацией | Экономический стимул для постоянного хранения в IPFS |
| Требование токена | Отсутствует | Требуется токен FIL (криптовалюта) |
| Сохранность данных | Зависит от добровольного хостинга узлов | Гарантируется контрактами на хранение и криптографическими доказательствами |
| Зависимость | Не требует Filecoin | Для работы требует IPFS |
IPFS функционирует без Filecoin. Filecoin не может функционировать без IPFS.
Отказ от ответственности: Данная статья предназначена исключительно для образовательных и информационных целей. Ничто в этом контенте не является финансовой, инвестиционной или юридической консультацией. Filecoin (FIL) — это криптовалюты. Инвестиции в криптовалюты сопряжены с риском. Перед принятием каких-либо инвестиционных решений проконсультируйтесь с квалифицированным финансовым консультантом.
Сохранение данных, закрепление и хранение в IPFS
IPFS не обеспечивает автоматическое постоянное хранение контента. Это особенность, которая удивляет многих пользователей, впервые сталкивающихся с этим протоколом.
Когда узел IPFS получает контент, он временно кэширует его. Кэш очищается со временем в процессе, называемом сборкой мусора, удаляя контент, который узел явно не запросил сохранить. Если ни одному узлу в сети активно не указано сохранять данный CID, этот контент становится недоступным, даже если адрес CID по-прежнему технически действителен, а контент когда-то был доступен.
Представьте, что закрепление (pinning) — это как добавление файла в закладки: вы даете своей IPFS-ноде команду хранить его постоянно, а не относиться к нему как к временной загрузке. Формально закрепление — это инструкция IPFS-ноде сохранять определенный контент дольше стандартного жизненного цикла кэша и исключать его из процесса сборки мусора. Если вы публикуете контент в IPFS, не закрепив его где-либо, вы полагаетесь на то, что другие ноды будут добровольно кэшировать его неопределенный срок, что не гарантируется.
Чтобы контент IPFS оставался доступным, у вас есть три практических опциона:
- Запустите собственный узел IPFS и закрепляйте контент самостоятельно. Это обеспечивает прямой контроль, но требует постоянного управления инфраструктурой.
- Используйте специализированный сервис закрепления. Pinata, web3.storage и Filebase размещают ваш контент на управляемых ими узлах IPFS, не требуя от вас никакой технической настройки.
- Используйте Filecoin для экономически стимулируемого постоянного хранения. Провайдеры хранения берут на себя договорные обязательства по сохранению ваших данных, подкрепленные криптографическими доказательствами и финансовыми штрафами за несоблюдение условий.
Контент IPFS является постоянным до тех пор, пока хотя бы один узел активно его закрепляет (pinning). Без закрепления (pinning) или хранения в Filecoin контент может стать недоступным, даже если CID по-прежнему циркулирует в смарт-контрактах, документации или других ссылках.
Почему важна IPFS: практическое применение
IPFS больше не является теоретическим предложением. Протокол развернут в продакшене в нескольких категориях инфраструктуры Web3, от NFT хранилища метаданных до собственного сетевого уровня Ethereum.
Многие стандарты NFT на базе Ethereum используют CID IPFS для хранения метаданных и медиафайлов офчейн, при этом CID встраивается в смарт-контракт для создания защищенной от несанкционированного доступа связи между токеном и его контентом. Такая схема означает, что доказательство контента NFT сохраняется даже в случае закрытия отдельного поставщика хранилища. Protocol Labs выделила сетевой уровень, созданный для IPFS, в отдельную библиотеку под названием libp2p, которая с тех пор была принята уровнем консенсуса Ethereum в качестве стека одноранговых сетей. Это внедрение демонстрирует более широкое влияние технологии IPFS на инфраструктуру Web3, выходящее далеко за рамки хранения файлов. Организации, включая Internet Archive, изучали возможность распределения контента на базе IPFS для архивных целей.
IPFS обеспечивает уровень хранения и маршрутизации контента, от которого зависят децентрализованные приложения для сохранения данных без центрального сервера. Метаданные NFT, файлы децентрализованных веб-сайтов и активы dApp, хранящиеся в IPFS, могут существовать бесконечно долго, пока узлы продолжают их закреплять, независимо от продолжения деятельности какой-либо отдельной компании. Для получения дополнительной информации о том, как развиваются и отслеживаются экосистемы криптовалюты, как работают рейтинги данных криптовалюты объясняет более широкую рыночную инфраструктуру, окружающую эти протоколы.
Сегодня вы можете получить доступ к контенту IPFS тремя способами:
- Публичный шлюз IPFS: перейдите по адресу
ipfs.io/ipfs/[CID]илиcloudflare-ipfs.com/ipfs/[CID]в любом стандартном браузере; установка не требуется - Десктопное приложение IPFS или браузер Brave: Brave имеет встроенную поддержку IPFS, которая нативно разрешает IPFS-адреса без использования шлюзов
- IPFS-демон командной строки: для продвинутых пользователей, которые хотят запустить собственный узел и напрямую участвовать в работе сети
Доступ через шлюз в своей основе использует протокол HTTP, что делает контент IPFS доступным в любом стандартном браузере без специального программного обеспечения. Большинство читателей сочтут вариант со шлюзом достаточным для просмотра контента, размещенного в IPFS.
Ограничения и критика IPFS
IPFS решает реальные проблемы традиционного интернета, однако протокол привносит свои компромиссы, которые необходимо учитывать при любой информированной оценке.
| Преимущества | Недостатки |
|---|---|
| Устойчивость к цензуре: нет единого сервера для блокировки | Нет автоматического сохранения: контент исчезает, если его открепить (unpinned) |
| Целостность данных: несоответствие CID выявляет любые попытки подделки | Более медленное начальное извлечение для редко используемого или недавно загруженного контента |
| Отсутствие единой точки отказа: контент сохраняется при сбоях отдельных узлов | Маршрутизация DHT вносит задержки, особенно для контента с небольшим количеством хостов |
| Автоматическое дедуплицирование: идентичный контент хранится один раз в сети | Не гарантирует анонимность пользователя |
| Эффективность использования пропускной способности для популярного контента: извлекается от нескольких ближайших пиров | Сложность пользовательского интерфейса (UX) для нетехнических пользователей; требуется использование сервисов закрепления (pinning) или техническая настройка |
Ограничение долговечности данных является наиболее значительной практической проблемой. Контент в IPFS настолько же постоянен, насколько готовы его размещать узлы. Это не недостаток проектирования в традиционном смысле; это прямое следствие удаления центрального сервера, который в противном случае нес бы ответственность за обеспечение доступности контента. Бремя обеспечения долговечности перекладывается с поставщиков инфраструктуры на издателей контента, которые должны активно управлять закреплением (пиннингом) или платить за хранение в Filecoin.
Маршрутизация DHT вносит задержку при получении, с которой HTTP не сталкивается. Для популярного контента, закрепленного множеством узлов, IPFS работает хорошо, поскольку близлежащие узлы могут быстро предоставлять контент. Для малоизвестного контента или недавно загруженных файлов IPFS может быть заметно медленнее, чем хорошо закэшированный HTTP-ответ. Это реальный компромисс в производительности, а не теоретический.
IPFS является структурно децентрализованным. Ни одна организация не контролирует сеть, а целостность контента криптографически гарантируется посредством проверки CID. Тем не менее, IPFS не обеспечивает анонимность. IP-адреса участвующих узлов видны во время получения контента, что означает, что IPFS не является инструментом обеспечения конфиденциальности и не должен рассматриваться как таковой.
Раздел FAQ ниже напрямую рассматривает несколько из этих компромиссов.
Часто задаваемые вопросы
Следующие вопросы отражают наиболее частые поисковые запросы об IPFS и технических документах (whitepapers), на которые даны прямые ответы.
Какую проблему решает IPFS?
IPFS решает четыре структурных недостатка веб-технологии на основе HTTP: битые ссылки, цензуру, узкие места пропускной способности и незаметное изменение данных. HTTP хранит файлы на центральных серверах. Если сервер выходит из строя или URL изменяется, файл исчезает. IPFS хранит файлы в распределенной одноранговой сети и идентифицирует их по содержимому, а не по местоположению, поэтому файлы остаются доступными до тех пор, пока их размещает хотя бы один узел.
Что такое адресация по содержимому в IPFS?
Адресация по содержимому — это метод поиска файлов на основе того, что они содержат, а не того, где они хранятся. Вместо того чтобы запрашивать файл у конкретного сервера по определенному URL-адресу, IPFS запрашивает у сети файл, который соответствует уникальному криптографическому отпечатку, называемому идентификатором содержимого (CID). Это означает, что один и тот же файл можно получить с любого узла, на котором он хранится, а сам CID служит доказательством того, что файл не был изменен.
Чем IPFS отличается от блокчейна?
IPFS — это распределенная файловая система для хранения и получения контента; блокчейн — это распределенный реестр для записи транзакций. IPFS использует Merkle DAG (направленный ациклический граф) для организации фрагментов файлов; блокчейн использует цепочку криптографически связанных блоков для записи истории транзакций. Эти две технологии часто используются вместе: блокчейн-приложения хранят большие файлы в IPFS и записывают CID файла ончейн для создания защищенной от несанкционированного доступа ссылки.
Что такое CID в IPFS?
Идентификатор контента (CID) — это уникальный адрес, присваиваемый каждой единице контента, хранящейся в IPFS, который генерируется путем обработки данных криптографической хеш-функцией. Два идентичных файла всегда создают один и тот же CID; изменение даже одного байта приводит к созданию совершенно другого CID. Это делает CID одновременно и адресом, и средством проверки целостности: если полученный контент соответствует запрошенному CID, вы можете быть уверены, что файл является подлинным и не подвергался изменениям.
Кто и когда создал IPFS?
Whitepaper IPFS был написан Хуаном Бенетом, специалистом в области компьютерных наук и основателем Protocol Labs, и опубликован в 2014 году. Protocol Labs, организация, основанная Бенетом, продолжает разрабатывать и поддерживать IPFS как протокол с открытым исходным кодом при участии разработчиков со всей экосистемы.
Является ли IPFS безопасным и децентрализованным?
IPFS структурно децентрализованный. Ни одна организация не контролирует сеть, а целостность контента гарантируется криптографическим хешированием. Любой узел, получающий файл, может подтвердить его соответствие запрошенному CID. Однако доступность контента зависит от активного закрепления (pinning): если ни один узел не хранит файл, он становится недоступным. IPFS не обеспечивает анонимность, так как IP-адреса участвующих узлов видны во время получения файла.
Что такое Filecoin и как он связан с IPFS?
Filecoin — это отдельная криптовалюта и сеть хранения данных, созданная Protocol Labs, которая выплачивает операторам узлов токенами FIL за постоянное хранение данных в IPFS. IPFS — это базовый протокол; Filecoin — это слой экономических стимулов, построенный поверх него. IPFS функционирует и без Filecoin, но Filecoin требует IPFS для своей работы.
Что такое whitepaper в сфере криптовалют?
Whitepaper в сфере криптовалюты — это технический документ, описывающий концепцию протокола, решаемую им проблему и архитектуру, используемую для её решения. Whitepaper Биткоина, опубликованный Сатоши Накамото в 2008 году, заложил стандарт для всей индустрии. Большинство надежных блокчейн- и Web3-проектов публикуют Whitepaper в качестве своего основного технического справочного документа.
Как получить доступ к контенту в IPFS?
Самый простой способ получить доступ к контенту IPFS — через публичный шлюз: перейдите по адресу ipfs.io/ipfs/[CID] или cloudflare-ipfs.com/ipfs/[CID] в любом стандартном браузере, без необходимости установки. Браузер Brave имеет встроенную поддержку IPFS, которая нативно разрешает IPFS-адреса. Для технических пользователей запуск десктопного приложения IPFS или демона командной строки подключает вас напрямую к одноранговой сети.
Заменяет ли IPFS интернет?
Нет. IPFS не предназначен для замены интернета или HTTP. Это вспомогательный протокол, который устраняет определенные ограничения модели HTTP, в частности, в вопросах сохранности данных, устойчивости к цензуре и целостности контента. Доступ к большей части текущего контента IPFS осуществляется через HTTP-шлюзы, что означает, что эти две системы работают сообща, а не конкурируют друг с другом.
Что почитать дальше
После прочтения этой статьи вы получите базовые знания, необходимые для взаимодействия с протоколом IPFS, оценки Whitepaper и понимания позиции IPFS в рамках более широкой экосистемы Web3. Теперь вы сможете объяснить, что такое Whitepaper, кратко изложить суть предложений Whitepaper IPFS, отличить IPFS от блокчейн и HTTP, а также понять, почему Filecoin и пиннинг существуют как отдельные решения проблемы долговечности данных.
Ваши следующие шаги зависят от ваших потребностей:
- Прочитайте оригинальный IPFS Whitepaper для ознакомления с полной технической спецификацией за авторством Хуана Бенета
- Обратитесь к официальной документации IPFS для получения актуальных сведений о деталях реализации, справочных материалов по API и руководств, поддерживаемых Protocol Labs
- Изучите основы блокчейна через смежные протоколы, чтобы укрепить свою базу знаний в области Web3
Примечание: IPFS — это протокол с открытым исходным кодом, находящийся в активной разработке. Технические детали, показатели внедрения и информация об экосистеме могут измениться после публикации. Ознакомьтесь с официальной документацией IPFS на сайте docs.ipfs.tech для получения самой актуальной спецификации.
Читайте также