IPFS

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
IPFS
Логотип программы IPFS
Тип сетевой протокол[d], файловая система, hypermedia distribution protocol[d] и сеть доставки контента
Автор Хуан Бенет (Juan Benet)
Разработчики Protocol Labs, сообщество
Операционная система FreeBSD, Linux, macOS и Microsoft Windows
Последняя версия
Состояние активное
Лицензия лицензия MIT
Сайт ipfs.tech​ (англ.)
Логотип Викисклада Медиафайлы на Викискладе

IPFS (от англ. InterPlanetary File System — межпланетная файловая система) — контентно-адресуемый, одноранговый гипермедийный протокол связи. Узлы IPFS-сети формируют распределённую файловую систему  (англ.). IPFS является проектом с открытым исходным кодом, разработанным Protocol Labs при содействии open-source сообщества.[1] Первоначально он был разработан Хуаном Бенетом (Juan Benet).[2]

Описание[править | править код]

Логотип Википедии имеет IPFS-хеш QmRW3V9znzFW9M5FYbitSEvd5dQrPWGvPvgQD6LM22Tv8D. Он доступен по HTTP через публичный шлюз или напрямую через IPFS

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

Это формирует обобщённый древовидный направленный граф.

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

Доступ к файловой системе может быть получен различными способами:

Локальный файл может быть добавлен в файловую систему IPFS, что делает его доступным всему миру. Файлы идентифицируются по своим мультихешам[4][5], что упрощает кэширование. Они распространяются через протокол, основанный на протоколе BitTorrent. Пользователи, просматривающие контент, помогают в доставке контента для других пользователей сети. IPFS имеет сервис имён под названием IPNS, глобальное пространство имён на основе открытых ключей, совместимое с другими пространствами имён и имеющее возможность интегрировать DNS, .onion, .bit и другие в IPNS.[6]

История разработки[править | править код]

На апрель 2016 года IPFS находится на уровне альфа-версии[7]. Основная реализация выполнена на языке Go, частично реализована версия на JavaScript, начата разработка версии на Python[8] и Rust.

Распространение[править | править код]

  • С 8 сентября 2015 все сайты хостинга Neocities[en] доступны через IPFS[9].
  • OpenBazaar использует IPFS.
  • С ноября 2019 IPFS используется для достижения консенсуса в создании блокчейна криптовалюты taucoin.
  • С 2021 года технологию IPFS поддерживает браузер Opera и Brave.

См. также[править | править код]

Примечания[править | править код]

  1. The IPFS Project. Дата обращения: 11 сентября 2015. Архивировано 27 марта 2021 года.
  2. IPFS README - Who designed it? Дата обращения: 11 сентября 2015. Архивировано 11 ноября 2020 года.
  3. The IPFS Project - How it works. Дата обращения: 11 сентября 2015. Архивировано 27 марта 2021 года.
  4. Мультихеш Архивная копия от 26 марта 2017 на Wayback Machine — это структура состоящая из трёх частей: ID хеш-функции, длина хеша в байтах, хеш.
  5. Commands | IPFS Docs. Дата обращения: 25 апреля 2017. Архивировано 26 апреля 2017 года.
  6. IPFS README. Дата обращения: 11 сентября 2015. Архивировано 11 ноября 2020 года.
  7. Current State of IPFS. Дата обращения: 26 апреля 2016. Архивировано 20 февраля 2016 года.
  8. Protocol Implementations. Дата обращения: 26 апреля 2016. Архивировано 20 февраля 2016 года.
  9. HTTP is obsolete. It’s time for the distributed, permanent web Архивная копия от 20 апреля 2016 на Wayback Machine / blog.neocities.org

Ссылки[править | править код]