IPFS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Логотип IPFS

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].

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

С 8 сентября 2015 все сайты хостинга Neocities[en] доступны через IPFS[9].

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

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

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

Ссылки[править | править вики-текст]