Еженедельный розыгрыш денег Участвовать

Ethereum запускает платформу для хранения информации Swarm

Дата: 22.12.2016
В тестовой сети Ropsten, принадлежащей Ethereum, 15 декабря была представлена тестовая версия платформы Swarm, которая будет использоваться для распределенного хранения информации. Основной целью проекта является создание независимого и безлимитного хранилища для публичной информации Эфириума, кода Dapps и других данных, хранимых в блокчейн. Разработчики Ethereum говорят о том, что их сеть будущего – Web 3.0 будет условно разделена на три основных составляющих – децентрализованный компьютер, независимая облачная система хранения информации Swarm и децентрализованная сеть Whisper.
Публичное тестирование Swarm позволит говорить о начале новой эпохи развития Эфириума. Алгоритм работы сети подразумевает интеграцию в блокчейн Ethereum, которая будет реализована в мультипротоколе devp2p. Основной ее задачей является контроль службы доменных имен, так как работает в WWW, а также осуществление сервисных платежей и проверка доступности данных. На данный момент, в тестовом варианте PoC 0.2 не осуществляет сервисные платежи, тогда как в PoC 0.4 уже обещают включить данную функцию. Это позволит любому пользователю предоставлять свободное место для Swarm на своем компьютере, взамен получая вознаграждение от сервиса.
Swarm стоит особняком среди прочих систем распределенного хранения данных, так как работает по новому принципу. Если известные аналоги Zeronet, Bittorrent или IPFS предоставляют общий доступ к информации, хранимой на компьютерах пользователей, то Swarm самостоятельно обеспечивает хостинг и действует в качестве провайдера, обеспечивающего доступ к независимому сервису облачного хранения.
Пользователи назвали такой принцип работы «загрузить и исчезнуть» — клиент заносит контент в сеть Swarm и получает возможность в любой момент скачать его обратно, и для этого не нужно использовать жесткий диск. Swarm является своеобразным «складом» контента, осуществляющим функции доставки. После того как он будет задействован в рабочем режиме, сервис можно будет использовать в разных сферах. Можно применять его при долгосрочном хранении редко используемых данных, а также для работы интерактивных веб-приложений.
Еще одним преимуществом сети Swarm является ее уникальная система мотивации. При этом децентрализованный процесс вычислений выгоден тем, что он сам определяет нормы работы сетей, узлов и децентрализованных сервисов. Благодаря этим правилам, в прошлом остаются трудности с координацией, которые будут решены за счет прозрачных стимулов. Подобные мотивационные системы позволяют влиять на поведение участников сети, каждый из которых заинтересован в рациональной работе сети. В целом все пользователи влияют на поведение системы, которая развивается в интересах участников намного эффективнее, чем, если бы координация отсутствовала.
Создатели Ethereum считают, что технология распределенного реестра, совместно с P2P-разработками, позволит реализовать полностью независимый интернет. Еще в 2014 году разработчики Виталик Бутерин и Гэвин Вуд представили общественности три отдельных протокола, которые должны использоваться в разных сетях. Так, BZZ предназначался для Swarm, SHH – для Wisper, а ETH планировался под блокчейн. На тот момент они представляли экосистему Ethereum в виде интернета будущего – Web 3.0. Таким образом, смарт-контракты должны вместе составлять коллективный разум для сети Swarm.

Как будет работать Swarm

Swarm – это технологический «коктейль», состоящий из следующих компонентов: сервис, сеть и ряд правил. В данной сети будут работать узлы, действующие по протоколу BZZ, которые между собой взаимодействуют согласно уровню devp2p/rlpx от Ethereum. Данный протокол определяет виды коммуникации. Чаще всего Swarm будет использоваться в качестве распределенного хранилища частиц данных, которые представляют собой блоки информации определенного размера (на данный момент он составляет 4 кб).
Каждый фрагмент информации обладает собственным контент-адресом, благодаря которому можно определить местонахождение элементов данных. Схема адресации создана максимально простой – любая часть информации играет роль входа, который возвращает 32-байтный ключ в виде выхода. Используемый хэш не подвержен изменениям и защищен от атак хакеров. Данный хэш представляет собой адрес, по которому пользователи смогут найти фрагменты контента. Конфиденциальность данных позволяет быть уверенным в том, что хранимый контент не будет подвержен изменениям и не достанется третьим лицам, для которых он не предназначен.
Сеть Swarm использует различные ресурсы пользователей для хранения информации – память, диск, полосу пропускания и процессоры узлов. Но как определить, где именно будут размещаться фрагменты контента? Каждому из узлов присвоен индивидуальный адрес, который сохраняется там же, где и частицы информации. Выделяемое пространство для данных называют оверлей-сетью.
После того как фрагменты загружаются в облачную сеть, протокол самостоятельно распределяет, на каких именно узлах будет располагаться информация. В результате синхронизации, элементы файлов привязываются к конкретным адресам. Если на узле появляется необходимость в данных, он отправляет соответствующий запрос в Swarm с указанием адреса контента. Сеть передает его дальше до тех пор, пока информация не будет обнаружена. Таким образом, принцип работы Swarm схож с классической таблицей распределенных хэшей, обладающей несколькими особенностями.
Swarm пользуется соединениями TCP/IP где каждый из узлов имеет ряд собственных постоянных адресов. Информация следует от узла к узлу, выбирая активные соединения участников сети. Основной задачей узлов является создание ряда соединений, которые гарантируют своевременную синхронизацию и использование маршрутизации, которая применяет специальные ключи. Для того чтобы ускорить процесс сохранения и изъятия фрагментов контента в сети используются те соединения между узлами и пирами, которые расположены максимально близко к адресатам.
В сети Swarm предсказания интереса к контенту будут основаны на прошлые запросы на эту информацию. И для того чтобы система рационально относилась к данным, необходимо постоянно удалять те фрагменты, которыми уже давно не интересовались пользователи. Если в течение долгого времени определенные запросы перестают возникать, или они вовсе никогда не возникали, контент будет постепенно перемещаться в корзину, а затем – удаляться, если его дополнительно не защитили «страховкой». Таким образом, узлы в автоматическом режиме используют собственные ресурсы, чтобы помогать пользователям. Благодаря автомасштабированию, Swarm становится гибким и саморегулируемым информационным облаком.
 
Нужен надежный обменник? Меняй у нас с гарантией!
 

Как появляются фрагменты?

Фрагментатор в сети Swarm действует на уровне API. Он работает с любым контентом (видеофайлы, тексты или другие файлы), и фрагментатор разделяет информацию на части небольшого, фиксированного размера. Данные частицы информации называют листовыми фрагментами. Они синхронизируются с пирами и хэшируются, а в дальнейшем массив данных упаковывается в промежуточные элементы. На сегодняшний день в один такой фрагмент помещают до 128 хэшей.
После манипуляций, проведенных для разделения контента, информация представляется в форме дерева фрагментов, и каждый желающий может по корневому хэшу определить адрес, по которому скачивается файл. Клиенты для получения контента указывают его корневой хэш, и если полученный прообраз является только одним из фрагментов файла, он определяется в виде последовательности хэшей. В итоге процесс поиска доходит до уровня данных и на выходе пользователь получает желанный файл. За счет использования дерева Меркла обеспечивается безопасность и целостность информации.

Манифесты и URL

Вершина дерева Меркла для сети Swarm состоит из фрагментов, которые являются важнейшим, третьим слоем контента. Их также называют файлами манифестов, в которых прописывается вид контента, его путь и хэш, которые тесно связаны с хранимой информацией. За счет манифестов можно создавать виртуальные сайты, хостингом которых занимается Swarm. Также сеть предоставляет этим онлайн-ресурсам адресацию с помощью URL. Записи манифеста нередко занимаются переадресацией на другие манифесты, образуя, таким образом, большие массивы данных. Примером таких сайтов являются Youtube и Википедия.
Можно визуально представить манифест, как таблицу маршрутизатора, которая между собой объединяет контент и его URL-строку. За счет использования таких элементов обеспечивается защита данных на сайте. Читаются манифесты при помощи протокольных схем bzzr url. Подобную хэш-адресацию принято называть неизменяемой, так как контент файла, расположенного по определенному адресу, нельзя редактировать. Но лучше осторожно делиться подобной информацией, ведь удалить ее не сможет даже пользователь, выложивший ее в открытый доступ. Если клиенты сети нуждаются в постоянном изменении содержимого сайта, им лучше использовать изменяемые адреса, работающие на службе имен. В таком случае могут использоваться, как блокчейн, так Сервис Имен Эфириума или доменные адреса сайтов.

Планы Swarm

После версии Swarm 0.2, анонсированной 15 декабря, выйдет более совершенный тестовый сервис 0.3, который получит новый сетевой уровень и протокол синхронизации. Запланировано дополнительное маскирование данных и разработка новых каналов частой связи. В следующей версии Swarm 0.4 используют экономическую модель, где пользователи будут отблагодарены за использование ресурсов их ПК. Дополнительно будет добавлена возможность страховать данные и увеличивать конфиденциальность контента.