В браузер Brave встроена поддержка распределённой сети IPFS

Разработчики web-браузера Brave объявили об интеграции поддержки децентрализованной файловой системы IPFS (InterPlanetary File System), образующей глобальное версионированное хранилище файлов, развёрнутое в форме P2P-сети, образованной из систем участников. Пользователи Brave теперь могут напрямую обращаться к ресурсам IPFS, используя схемы ipfs:// и ipns://. Новая возможность доступна в Brave для настольных систем (Linux, macOS и Windows), начиная с выпуска 1.19.

При определении попытки обращения по адресу IPFS или обнаружении перехода по ссылке на HTTP-шлюз к IPFS, браузер предложит пользователю запустить собственный узел IPFS или воспользоваться шлюзом для доступа к IPFS поверх HTTP. По умолчанию предлагается шлюз dweb.link, поддерживаемый компанией Protocol Labs, курирующей разработку IPFS. Пои выборе установки собственного локального узла на систему будет загружен пакет go-ipfs, для последующего поддержания которого в актуальном состоянии применяется тот же механизм, что используется для обновления дополнений.

Для управления доступом к IPFS в Brave реализована служебная страница brave://ipfs, а также специальная кнопка в меню (My Node). Дополнительно пользователь может установить дополнение IPFS Companion для управления локальным узлом IPFS. Для обеспечения конфиденциальности обработка IPFS отключается в приватном режиме и при работе через Tor.
Размер кэша локального узла IPFS ограничивается 1 ГБ, при заполнении кэша на 90% каждый час начинает запускаться сборщик мусора.


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

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

Напомним, что web-браузер Brave развивается под руководством Брендена Айка (Brendan Eich), создателя языка JavaScript и бывшего руководителя Mozilla. Браузер построен на базе движка Chromium, сосредоточен на оберегании приватности пользователей, включает интегрированный движок для вырезания рекламы, может работать через Tor, предоставляет встроенную поддержку HTTPS Everywhere, IPFS и WebTorrent, предлагает альтернативный баннерам механизм финансирования издателей на основе подписки. Код проекта распространяется под свободной лицензией MPLv2.

Децентрализованная файловая система IPFS примечательна адресацией по содержимому, а не месту размещения и произвольным именам, – в IPFS ссылка для доступа к файлу непосредственно связана с его содержимым и включает криптографический хэш содержимого. Адрес файла невозможно произвольно переименовать, он может измениться только после изменения содержимого. Аналогично невозможно внести изменение в файл без изменения адреса (старый вариант останется на прежнем адресе, а новый будет доступен через другой адрес, так как хэш от содержимого файла изменится). Учитывая то, что идентификатор файла меняется при каждом изменении, чтобы каждый раз не передавать новые ссылки предоставляются сервисы для привязки постоянных адресов, учитывающих разные версии файла (IPNS), или закрепления псевдонима по аналогии с традиционными ФС и DNS (MFS (Mutable File System) и DNSLink).

По аналогии с BitTorrent данные непосредственно хранятся на системах участников, которые обмениваются информацией в режиме P2P, без привязки к централизованным узлам. При необходимости получить файл с определённым содержимым система находит участников, у которых имеется данный файл и отдаёт его с их систем частями в несколько потоков. После загрузки файла на свою систему участник автоматически становится одной из точек по его раздаче. Для определения участников сети на узлах которых присутствует интересующий контент используется распределённая хэш таблица (DHT).

Release. Ссылка here.