Разделы

Интернет Хостинг и домены

Технология IPFS

Мы часто задаёмся вопросом: «каким будет интернет через 5, 10, 20 лет?». Один из ответов на этот вопрос нам даёт технология IPFS (или межпланетарная файловая система).

Что же такое IPFS?

IPFS (InterPlanetary File System) — это распределенная система хранения и доступа к файлам.

Технология IPFS лежит в основе идеи децентрализованного интернета, известной также как Web 3.0. Контент, размещенный в IPFS, хранится не на одном сервере, а на множестве расположенных в любой точке мира одноранговых узлов, которые могут передавать информацию и хранить её.

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

Адресация и доступ к данным в IPFS

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

То есть вместо того, чтобы сказать сети «дай мне файл, который находится по конкретному URL-адресу (https://sweb.ru/images/logo.svg)», мы говорим «дай мне файл с конкретным содержимым». И если этот файл в сети присутствует, то сеть его отдаёт.

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

Каноническая ссылка для доступа к файлу в IPFS выглядит как протокол IPFS + хеш:

ipfs://QmQJXYB8LnxWBkx5XR2WRCJYKLZB2Xxy9LoPngw98eNk4r/

Открыть такую ссылку можно только с помощью программного обеспечения, поддерживающего протокол IPFS. На текущий момент по умолчанию этот протокол поддерживается браузерами Opera и Brave. Для других популярных браузеров существует соответствующие расширения.

Для упрощённого доступа к данным IPFS через протокол HTTP существуют IPFS-шлюзы. С их помощью можно открыть файл и без дополнительного ПО. При использовании шлюза ссылка будет выглядеть как протокол http(s) + адрес шлюза + хеш:

https://ipfs.sweb.ru/ipfs/bafybeia5fqniykcdh7leaebozxmjvwvnlo45vwl3ja5c6ds54t33vmkp4m/

Также существуют специальные домены в отдельных доменных зонах (т.н. криптодомены) и TXT-записи определенного формата для склеивания обычных доменов с IPFS хешами (технология IPNS), позволяющие преобразовывать хеш в имя для быстрого доступа к данным IPFS.

В чём ценность IPFS для пользователей

По сравнению с традиционными системами хранения и доступа к контенту IPFS обладает следующими преимуществами:

  1. Подтверждение подлинности данных. Файл, находящийся по конкретному адресу, можно подменить или изменить, тогда как файл, адресуемый по своему содержимому (хешу), подменить невозможно. В случае его изменения создастся новый хеш, а прежний файл будет доступен по исходному хешу.
  2. Надёжность хранения. В IPFS данные хранятся с избыточностью, поэтому в случае недоступность части узлов, данные можно будет получить с других узлов сети. Только если все узлы, на которых хранится копия контента, выйдут из строя, контент будет недоступен в IPFS.
  3. Скорость доступа к данным. Данные в первую очередь отдаются с того узла, который ближе всего находится к пользователю. Именно эта особенность сети IPFS легла в основу названия «межпланетарная».
  4. Версионность файлов и всех изменений на уровне самой сети. При внесении изменений в контент, все предыдущие версии файлов сохраняются, а новые блоки IPFS с новыми данными назначаются дочерними к старым, так что при желании всегда можно проследить историю изменений данных.

Особенности и ограничения IPFS

В сети можно хранить только интерпретируемые на стороне пользователя данные (текст, фото, видео, html и т.д.) Возможности использовать обработчики php, python и прочее нет.

Для того, чтобы контент распространился по сети IPFS, к нему должны быть обращения. Контент, к которому нет обращений, может полностью пропасть из сети.

Сервис предоставляется as is и поддерживается интернет-сообществом, поэтому качественные характеристики работы сети, равно как и доступность контента в принципе, не могут быть никем гарантированы.

Другими словами, сервис пока стоит рассматривать, как дополнительный инструмент хранения/дублирования данных, но не полноценную замену существующим технологиям.

IPFS в SpaceWeb

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

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