IPFS вместо HTTP — будущее децентрализованного интернета?

УглубленныйДецентрализацияТехнические основы
УглубленныйДецентрализацияТехнические основы

Главное

  • IPFS (InterPlanetary File System) — протокол связи для создания распределенной файловой системы, призванный заменить существующий интернет-протокол HTTP. Контент, размещенный в IPFS, хранится не на одном сервере, а на множестве узлов.
  • IPFS — важное инфраструктурное решение для Web3, которое позволяет децентрализовать хранение данных в различных децентрализованных приложениях, включая NFT, GameFi, DeFi.
  • В дальнейшем IPFS может полностью изменить принцип хранения данных в сети и доступ к ним, решив проблему цензуры и монополии популярных облачных платформ, которые предоставляют Google, Amazon, Alibaba, Microsoft и другие техгиганты.

Чем IPFS отличается от HTTP

IPFS (InterPlanetary File System, «Межпланетная файловая система») — это гипермедийный протокол связи с открытым кодом, с помощью которого компьютерные узлы осуществляют хранение и распространение данных в единой распределенной файловой системе.

Ключевое отличие IPFS от существующего интернет-протокола HTTP в том, что доступ к данным осуществляется не по местоположению сайта, а напрямую по адресу его содержимого (файлу, документу, изображению, папке).

Отличия структуры коммуникации в HTTP и IPFS. Данные: Medium

Cтруктура хранения данных в IPFS децентрализованна, что позволяет решить проблему цензуры. Автор решения — основатель и глава американского стартапа Protocol Labs Хуан Бенет — назвал IPFS «распределенным постоянным вебом», имея в виду, что размещенный в системе сайт никогда и никем не может быть закрыт.

«В некотором смысле IPFS похожа на Интернет, но IPFS можно рассматривать как единый рой BitTorrent, обменивающийся объектами в одном репозитории Git. Другими словами, IPFS представляет высокопроизводительную модель хранилища блоков с контентно-адресуемыми гиперссылками», — пояснил он в white paper проекта.

В IPFS адреса указывают на файлы или данные, полученные из содержимого самого файла или данных с помощью хэшировашия. Это значит, что контент веб-сайтов в сети IPFS можно перемещать и получать к нему доступ децентрализованным способом в одноранговой сети.

Простыми словами IPFS — это аналог торрент-трекера, в котором некоторое количество узлов (компьютеров) свободно делятся хранящимися на них файлами, таким образом распространяя их по всей сети с возможностью получения свободного доступа.

Таким образом, IPFS решает проблемы HTTP, который направляет весь трафик через централизованные сервера, что приводит к дополнительным расходам и рискам массовых отключений из-за проблем с сервером. Сеть IPFS позволяет узлам загружать и передавать файлы не только с одного сервера, как это реализовано в HTTP, а из многих узлов одновременно. Когда пользователь в сети IPFS запрашивает файл, сеть IPFS находит узлы, у которых есть необходимые хэши, и извлекает данные.

Кто и когда разработал IPFS

Автором IPFS стал основатель американской компании Protocol Labs Хуан Бенет. Публикация технической документации новой файловой системы состоялась в июле 2014 года.

Первый релиз протокола состоялся в феврале 2014 года. Первым крупным сайтом в сентябре 2015 года, использующим распределенный веб IPFS, стал бесплатный веб-хостинг Neocities, позволяющий создавать мини-сайты на своей платформе. 

Следующим важным моментом в истории развития IPFS стало ICO Filecoin на $257 млн. Продажа токенов проходила на платформе Coinlist, которую основала Protocol Labs совместно с AngelList. Как отметили тогда разработчики, целью Filecoin было создать экономические стимулы для пользователей IPFS c помощью криптовалюты.

В июне 2019 году Protocol Labs организовала первое IPFS-мероприятие в Барселоне, результатом которого стало сотрудничество с Netflix, а также с Opera, Microsoft и Cloudflare.

Не менее важным событием стал запуск основной сети Filecoin в октябре 2020 года. По заявлению команды Protocol Labs, это позволило создать уровень принятия IPFS со встроенными экономическими стимулами.

Как работает IPFS — подробное объяснение

При загрузке контента в IPFS адрес для доступа к объекту, файлу или пользовательским данным в системе формируется с привязкой не к адресу сервера, которым является IP-адрес, а к его уникальному криптографическому хешу-идентификатору Content Identifier (CID).

При повторной загрузке файла CID не меняется, а обновленным версиям файла присваиваются новые хеш-идентификаторы. Чтобы получить доступ к ранней версии файла, применяется сервис имен InterPlanetary Naming System (IPNS) — аналог реестра DNS.

Файлы IPFS размером свыше 256 Кб разбиваются на части, хешируются и организовываются в IPLD-объекты (InterPlanetary Linked Data). IPLD состоит из двух компонентов: самих данных и ссылок на части файла, связанных между собой через направленный ациклический граф дерева Меркла (Merkle DAG).

Затем в дело вступает специальная программа IPFS-дэймон (IPFS daemon), отвечающая за коммуникации в системе. Она временно кэширует данные, либо по выбору пользователя «прикрепляет» их к себе и по запросу раздает другим узлам. В дальнейшем такие ноды могут выполнять функции провайдеров контента или остаться его получателями.

После запроса контента в распределенной хеш-таблице (Distributed Hash Table, DHT) системы проводится поиск ближайших к пользователю узлов с копией искомых данных. Именно они отдают части файла.

Где используется IPFS

Согласно статистике сервиса BuiltWith, на 5 октября 2022 года IPFS используют около 6 500 сайтов по всему миру. Из них чуть менее трети расположены в США. В этот список входят децентрализованная биржа Uniswap, сервис данных о децентрализованных приложениях Dapp Radar и платформа для криптовалютных стартапов DAO Maker.

Первым веб-ресурсом с поддержкой IPFS в 2015 году стал хостинг-сервис Neocities. Крупнейший провайдер сетевых услуг Cloudflare начал использовать IPFS в 2018 году и запустил собственный шлюз в системе в 2022-м. В марте 2020 года браузер Opera предоставил доступ к децентрализованным ресурсам провайдера Unstoppable Domains, разместив контент в IPFS. В начале 2021 году протокол интегрировал криптобраузер Brave.

Технология IPFS стала использоваться как ответ на цензуру со стороны регуляторов. Первым примером стала загрузка в IPFS турецкой версии Wikipedia. Весной 2019 года в ответ на арест Ассанжа активисты загрузили в IPFS архив WikiLeaks.

IPFS также используется для хранения кода. Это практикует, например, команда децентрализованной биржи Uniswap, которая размещает в IPFS.

IPFS также выступает важным инфраструктурным слоем Web3, поддерживая работу NFT-проектов, децентрализованных приложений и других ресурсов. Появились специальные компании, предоставляющие услуги по управлению файлами в IPFS. Например, платформа Pinata позволяет монетизировать медиафайлы для NFT, выпущенных в разных блокчейнах, включая Ethereum, Solana, Polygon, Avalanche и Algorand.

Как открыть IPFS-ссылку

Многие популярные браузеры, такие как Opera и Brave, уже добавили нативную поддержку IPFS-ссылок. Это значит, что вы сможете открыть в указанных браузерах сайты через адрес с префиксом ipfs://, например:

ipfs://bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze/wiki/

Однако в Google Chrome такая ссылка не откроется. Вместо этого для доступа к ресурсу придется использовать существующий протокол HTTPS вместе с адресом сайта, где хранится файл, например:

https://ipfs.io/ipfs/bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze/wiki/

Чтобы напрямую открывать IPFS-ссылки в Google Chrome, потребуется установить специальное расширение IPFS Companion. Для корректной работы расширения разработчики рекомендуют установить собственный узел IPFS на свой компьютер. Чтобы это сделать, нужно зайти в раздел IPFS Desktop на официальном сайте IPFS и следовать простым указаниям, предварительно выбрав подходящую платформу: Windows, macOS или Ubuntu.

Команда Protocol Labs также позаботилась и о владельцах доменов и сайтов, планирующих перенести свои веб-ресурсы на IPFS. Разработан специальный сервис загрузки Fleek, который позволяет перенести и настроить сайты без необходимости устанавливать что-либо на свой компьютер и разбираться с командной строкой или кодом.

Подписывайтесь на ForkLog в социальных сетях

Telegram (основной канал) Discord Instagram
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

*Ежедневная рассылка — краткая сводка наиболее важных новостей предыдущего дня. Чтение занимает не больше двух минут. Выходит в рабочие дни в 06:00 (UTC)
*Еженедельная рассылка — объясняем, кто и как изменил индустрию за неделю. Идеально подходит для тех, кто не успевает за новостным потоком в течение дня. Выходит в пятницу в 16:00 (UTC).

Мы используем файлы cookie для улучшения качества работы.

Пользуясь сайтом, вы соглашаетесь с Политикой приватности.

OK
Exit mobile version