Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Открылся P2P-хостинг картинок IPFS (InterPlanetary File System)

Open source *IPFS *
По адресу ipfs.pics начал работу бесплатный хостинг картинок. Казалось бы, что тут интересного? С виду обычный бесплатный хостинг, разве что без рекламы. Но IPFS.pics отличается от всех подобных проектов, потому что основан на распределённой файловой системе InterPlanetary File System. Файлы хранятся не на центральном сервере, а в P2P-сети пользователей, которые добровольно принимают участие в проекте.

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

Хеш соответствует названию файла.

http://ipfs.pics/ipfs/QmcT99xWRNDAYunp7Zr8wGiwMKSgVfDpfbXw9hBtLCM4Mm

Читать дальше →
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 12K
Комментарии 13

Браузер Brave первым добавил поддержку IPFS

Информационная безопасность *Браузеры Софт

С выпуском версии 1.19 пользователи Brave могут напрямую получать доступ к содержимому распределённой файловой системы IPFS, вводя URI, начинающиеся с ipfs://

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

Если вкратце, вместо размещения информации на центральных серверах, контентно-адресуемый, одноранговый гипермедийный протокол IPFS предусматривает размещение в сети распределённых узлов. Этот P2P-протокол в каком-то смысле можно сравнить с торрентами. Каждый ресурс скачивается по хешу, а не по обычному URL. Вы вводите URI с мультихешем, а сеть находит, где хранятся фрагменты этого контента. По сути, узлы IPFS-сети формируют распределённую файловую систему. IPFS можно представить как единый BitTorrent-рой, обменивающийся файлами единого Git-репозитория.
Всего голосов 17: ↑17 и ↓0 +17
Просмотры 5.1K
Комментарии 14

Почему Интернету нужен IPFS, пока ещё не поздно

Децентрализованные сети Хранение данных *IPFS *
Перевод
[узлы к узлам]

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

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

Как и почему это? Для ответа на этот вопрос придётся вдаваться в подробности.
Читать дальше →
Всего голосов 54: ↑46 и ↓8 +38
Просмотры 63K
Комментарии 103

Работа в IPFS с человеческим лицом

Ненормальное программирование *Go *IPFS *
Из песочницы

Немногие слышали про IPFS, ещё более немногие добрались до детального изучения. И совсем уж единицы погрузились в проект поглубже.




Если вкратце, IPFS это химера, созданная из технологий, лежащих в основе git и bittorrent, с одной особенностью — адресация объектов по содержимому (CAS).


Любой объект, файл или пользовательские данные хэшируются, и получившийся хэш становится адресом этого файла в системе IPFS. Далее, этот контент могут запросить другие узлы сети, и он расползётся по планете, и в идеале, никогда больше не исчезнет, будучи доступным по хэшу. Из этого свойства так же вытекает иммутабельность объектов в системе, ведь любое изменение содержимого создаёт новый адрес-хэш в сети.


Типичная ссылка на объект: http://ipfs.io/ipfs/QmPQGujZ4K1xPNNcCjBWMoSuYrcJae43dukJP51mbfftDK

Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Просмотры 11K
Комментарии 22

Межпланетная файловая система IPFS

Децентрализованные сети IPFS *

InterPlanetary File System — это новая децентрализованная сеть обмена файлами. Также выполняет функцию сети доставки содержимого.


Отличие от других децентрализованных сетей в том что самостоятельной единицей передаваемой в сети является блок. Блок может содержать как часть файла так и ссылки на другие блоки. Из блоков выстраивается направленный ациклический граф из которого в дальнейшем собирается файл или каталог.


Такая система позволяет более гибко подойти к хранению и передаче данных в сети. Недостатком такого подхода является то что всё что загружается в сеть режется на блоки и складывается в отдельный каталог на вашем диске.(Исправлено: "больше нет необходимости копировать в сеть") Поиск по имени файла или каталога в IPFS отсутствует также как и в сети BitTorrent.


image

Читать дальше →
Всего голосов 23: ↑20 и ↓3 +17
Просмотры 51K
Комментарии 36

Публикуем сайт в межпланетной файловой системе IPFS

Децентрализованные сети IPFS *

В этой статье я расскажу как в ней запустить статичный сайт который будет доступен и напрямую и по IPNS. У сайта будет нормальное доменное имя благодаря использованию DNS. Доменное имя можно использовать для доступа к сайту напрямую, через глобальный и локальный шлюз.


Условия:


  1. На нашем сервере установлен IPFS
  2. У нас есть домен и доступно редактирование DNS записей

Напомню: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я начал рассказ в статье "Межпланетная файловая система IPFS".

image

Читать дальше →
Всего голосов 21: ↑20 и ↓1 +19
Просмотры 16K
Комментарии 23

Хостим сайт в межпланетной файловой системе IPFS под Windows

Децентрализованные сети IPFS *

Прошло некоторое время от начала моих экспериментов с хостингом простых сайтов в IPFS. Запустил я свой IPFS клиент под Windows и у меня есть теперь что дополнить к предыдущей статье "Публикуем сайт в межпланетной файловой системе IPFS"


  1. Решение проблемы c utf-8 в консоли Windows XP.
  2. Своя страница 404
  3. Корректная загрузка сайта с разных URL

Напомню: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я начал рассказ в статье "Межпланетная файловая система IPFS".

image

Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 10K
Комментарии 2

Часть 2. Где хранить данные децентрализованным приложениям на блокчейне?

Криптография *Open source *Анализ и проектирование систем *NoSQL *Big Data *
В первой части статьи была обозначена проблема хранения данных приложений в блокчейне. Для понимания сути происходящего рекомендуем её прочитать. В этой части статьи мы обозначим наши пожелания к свойствам идеального хранилища данных, а также рассмотрим существующие подходы к решению этой проблемы.
Читать дальше →
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 18K
Комментарии 1

Интернет на магнитах 5 — Маяки и сообщения (личные, публичные и обновления)

Децентрализованные сети IPFS *

Я вспомнил что не рассказал важную часть для обеспечения возможности общения и обновления контента в P2P сетях.


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


Как это работает


Шаблон маяка создаётся однократно и используется для создания маяков для связи с автором.


Общий алгоритм получения


  1. Публикуется шаблон маяка.
  2. Формируется маяк.
  3. Поиск этого маяка и файла с хешем маяка в имени.
  4. Загрузка найденных файлов или просмотр шары источников маяка.

Общий алгоритм отправки такой


  1. Пишем сообщение.
  2. Шифруем открытым ключом адресата.
  3. Формируем маяк по шаблону адресата.
  4. Получаем хеш от маяка и вставляем в имя файла с сообщением.
  5. Публикуем маяк и файл с сообщением в p2p сетях.

Наше сообщение и маяк свободно могут копировать другие участники сети. Так как оно зашифровано они не смогут его прочитать но помогут его держать онлайн пока его не получит адресат.

Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры 4K
Комментарии 0

Межпланетная файловая система — больше нет необходимости копировать в сеть

Децентрализованные сети IPFS *

Всем хороша идея IPFS но вот только был один недостаток у неё. Данные загружаемые в сеть копировались в хранилище блоков удваивая занимаемое ими место. Более того файл резался на блоки которые мало пригодны для повторного использования.


Появилась экспериментальная опция --nocopy, которая избавляет от этого недостатка. Для того чтобы пользоваться ей необходимо выполнить несколько условий.


Также появился новый тип идентификаторов. Его мы тоже разберём.


Напомню: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я начал рассказ в статье "Межпланетная файловая система IPFS".

image

Читать дальше →
Всего голосов 24: ↑22 и ↓2 +20
Просмотры 17K
Комментарии 14

Межпланетная файловая система — Локализуем глобальный шлюз или сайты в IPFS

Децентрализованные сети IPFS *

Мы научимся переключать на свой локальный шлюз IPFS сайты, которые этого ещё не делают сами автоматически. Создадим им общий SSL сертификат при помощи OpenSSL в комплекте со Stunnel.


Напоминаю: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я рассказывал в статье "Межпланетная файловая система IPFS".

image

Читать дальше →
Рейтинг 0
Просмотры 1.3K
Комментарии 1

Межпланетная файловая система — Переключаем свой сайт на localhost (локальный шлюз IPFS)

Децентрализованные сети IPFS *

Мало смысла в IPFS, если использовать его только как бесплатный хостинг для сайта в сети интернет. Поэтому мы научимся здесь загружать наш сайт через локальный IPFS шлюз пользователя.


Пользователю это даст быстрый доступ к его локальной копии нашего сайта.


Напомню: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я начал рассказ в статье "Межпланетная файловая система IPFS".


image

Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 8.6K
Комментарии 5

Создание децентрализованного музыкального плеера на IPFS

Децентрализованные сети IPFS *
Из песочницы


В этой статье описаны результаты двухмесячных экспериментов с IPFS. Главным итогом этих экспериментов стало создание proof-of-concept стримингового аудио плеера, способного формировать фонотеку исключительно на основе информации, публикуемой в распределённой сети IPFS, начиная с метаданных (название альбома, треклист, обложка), заканчивая непосредственно аудио-файлами.


Таким образом, будучи десктопным electron-приложением, плеер не зависит ни от одного централизованного ресурса.

Читать дальше →
Всего голосов 27: ↑27 и ↓0 +27
Просмотры 11K
Комментарии 23

Compact varint — уникальность и большие значения за ту же стоимость

Go *

UPD 2018.03.15: Git давно использует свой вариант compact varint. Различия в послесловии.


Внимание: Код представленный в статье немного отличается от оригинальных EncodeVarint и DecodeVarint и даёт другие результаты. Будьте внимательны.


В multiformats/unsigned-varint обсуждении правильной записи числа в varint было замечено что многие числа в оригинальном varint могут быть записаны в последовательности разной длинны. Это даст разные блоки и их хеши при идентичных значениях кодированных в протобуфер.


Оригинальный varint


Оригинальный varint просто делит число на кусочки по 7 бит. И записывает их в порядке от младшего к старшему добавляя к каждому кусочку старший 8ой бит (MSB — most significant bit). Значение этого бита зависит от того последний это кусочек (0) или нет (1).


Таким образом например значение 0 мы можем записать во многих вариантах:


  1. 0000 0000 (0x00) varint = 0
  2. 1000 0000 0000 0000 (0x8000) varint = 0
  3. 1000 0000 1000 0000 0000 0000 (0x808000) varint = 0
    и так далее.

Compact varint


Я подумал что можно начинать значения контейнера большего размера от максимального значения предыдущего контейнера + 1. Ведь если мы используем контейнер такого размера то число должно быть больше максимума предыдущего контейнера.

Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 4.9K
Комментарии 18

Википедия неуязвима для цензуры в сети IPFS

Краудсорсинг Криптовалюты IPFS *
24 августа 2015 года Роскомнадзор распорядился заблокировать Википедию на территории России. Вскоре чиновники одумались и отменили решение. Но это может повториться в любой момент.

29 марта 2017 года турецкие власти последовали примеру российских братьев по разуму. Они тоже заблокировали Википедию. Турки пошли до конца — и с 8:00 по местному времени все версии Википедии были заблокированы в Турции в соответствии с административным решением No. 490.05.01.2017-182198 / 5651.

Как сказал в своё время Джон Перри Барлоу, Интернет по своей сути воспринимает цензуру как неисправность и старается обойти её. Есть много стандартных способов обойти обычную блокировку по IP. Два года назад Сеть породила концептуально новый проект IPFS (Inter-Planetary File System), который делает цензуру конкретных IP-адресов в интернете невозможной в принципе. Здесь вместо адресации по местоположению используется адресация по контенту. В пиринговой сети нет единого центра, который можно заблокировать. Копии распространяются от ноды к ноде. Даже если уничтожить все копии контента, кроме одной, информация снова пойдёт по сети.

IPFS — технология, которая работает уже сейчас, и она полностью готова выручить в ситуации, когда чиновники Роскомнадзора блокируют контент, пытаясь запретить гражданам получить какую-то информацию. Пример Турции отлично демонстрирует это.
Читать дальше →
Всего голосов 65: ↑62 и ↓3 +59
Просмотры 34K
Комментарии 136

GDPR — палка о двух концах

Социальные сети и сообщества Будущее здесь
Каким был Интернет 1.0 до социальных сетей, пока не набежали широкие массы, дерущиеся за деньги и власть?

Сейчас другой Интернет. Время от времени появляются нововведения, решающие старые проблемы и добавляющие новые…
Одно из таких введений — GDPR, вступающий в действие в мае 2018-го.
Читать дальше →
Всего голосов 19: ↑17 и ↓2 +15
Просмотры 12K
Комментарии 27

Neocities стал первым крупным сайтом, использующим распределённый веб IPFS

Социальные сети и сообщества IPFS *
image

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

IPFS – это распределённая файловая система (создатели назвали её «Interplanetary File System», «межпланетная (но по сути, конечно, всепланетная) файловая система»), которая, по замыслу разработчиков, должна заменить текущий протокол HTTP для доступа к вебу. По описанию создателей, это можно сравнить с группой пользователей, разделяющих между собой один и тот же torrent, содержимое которого представляет собой проект на github.

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

По замыслу разработчиков IPFS, новая система должна стать более надёжной, менее затратной в использовании, а главное – не должна быть подвержена атакам со стороны правительств и корпораций.
Читать дальше →
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 8.8K
Комментарии 6

Погружение в разработку на Ethereum. Часть 5: Oraclize

Децентрализованные сети Программирование *Solidity *
Доступ к объемным файлам и различные внешние динамические данные часто являются очень важной частью децентрализованного приложения. При этом в самом по себе Ethereum механизма обращения наружу не предусмотрено — смарт контракты могут читать и писать только в рамках самого блокчейна. В этой статье рассмотрим Oraclize, который как раз дает возможность взаимодействия с внешним миром путем запросов к практически любым интернет-ресурсам. Смежной темой является IPFS, вкратце упомянем и о ней.


Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Просмотры 5.8K
Комментарии 1

Межпланетная файловая система — тривиальный хеш (identity), DAG блок и Protocol Buffers

Децентрализованные сети IPFS *

Недавно в IPFS добавили поддержу тривиального (identity) хеша. В своей статье я расскажу о нём и покажу как его можно использовать.


Напомню: InterPlanetary File System — это новая децентрализованная сеть обмена файлами (HTTP-сервер, Content Delivery Network). О ней я начал рассказ в статье "Межпланетная файловая система IPFS".

Обычно при хешировании проходя через хеш-функцию данные необратимо "сжимаются" и в результате получается короткий идентификатор. Этот идентификатор позволяет найти данные в сети и проверить их целостность.


Тривиальный хеш — это сами данные. Данные никак не изменяются и соответственно размер "хеша" равен размеру данных.


Тривиальный хеш выполняет ту же функцию что и Data: URL. Идентификатор контента в этом случае содержит сами данные вместо хеша. Это позволяет вкладывать дочерние блоки в родительский делая их доступными сразу после получения родительского. Также можно включать данные сайта непосредственно в DNS запись.


Для примера закодируем текстовую строку "Привет мир" в идентификатор контета(CID) с тривиальным хешем.
image

Читать дальше →
Всего голосов 21: ↑20 и ↓1 +19
Просмотры 5.1K
Комментарии 6

Бессерверный статический сайт с помощью IPFS

Хостинг Децентрализованные сети IPFS *
TL;DR: IPFS позволяет хостить статические сайты распределённо, доступ к которым можно осуществлять через публичные кеширующие гейты (прозрачные реверс-прокси) в интернете, без необходимости устанавливать программу посетителю. Такие сайты можно раздавать без маршрутизируемого («белого») статического IP-адреса (будет работать за NAT), они остаются работоспособными при кратковременном (несколько часов) отсутствии раздающих, за счет кеша на гейтах. К гейтам по желанию можно привязать свой домен, причём добавить DNS-записи можно на несколько гейтов одновременно, для повышения надёжности и балансировки нагрузки. Сайт могут скачать другие пользователи IPFS и помочь с раздачей.
IPFS отлично подходит для статических блогов, простых сайтов, файловых архивов (в качестве замены Bittorrent), а также просто для единовременной передачи больших файлов без предварительной загрузки их на какой-либо сервис.

Что такое IPFS?

IPFS — децентрализованная пиринговая система передачи файлов, по принципу работы похожая на BitTorrent, но с возможностью доступа через HTTP, для Web. Все скачиваемые пользователем файлы временно кешируются IPFS-демоном и раздаются другим пользователям, запрашивающим их. Важные файлы можно «прикрепить» (pin) к IPFS-демону, тогда они не исчезнут из кеша.
Читать дальше →
Всего голосов 61: ↑61 и ↓0 +61
Просмотры 21K
Комментарии 32
1