Pull to refresh

MaidSafe — распределённая система хранения и обработки данных

Reading time 8 min
Views 24K
Original author: команда MaidSafe

MaidSafe – интересная распределённая система передачи и хранения данных. Мне понравилась эта идея и я захотел поделиться с общественностью. Компания MaidSafe зарегистрирована в Шотландии, и разрабатывает свой проект при поддержке спонсоров.

Обзор платформы


MaidSafe состоит из двух главных компонентов – сеть и клиентские приложения. Сеть находится в разработке, и планируется к выходу к концу 2014 года (уже доступны исходники для компиляции на github. Также готовятся к выпуску приложения, которые на примере покажут использование SAFE API и позволят всем создавать свои собственные приложения.

Сеть SAFE

Сеть SAFE (Secure Access for Everyone, безопасный доступ для всех. БезДоДляВ? ВсеБезДоз?) – полностью распределённый сервис для работы с данными. Сеть обрабатывает как статические, так и динамические данные, включая коммуникации. Данные либо шифруются на клиенте, либо подписываются цифровой подписью клиента. В любом случае, сеть не имеет возможности расшифровывать данные, проходящие по ней. Можно представить себе это как децентрализованный сервер, работающий вместо типичных серверов httpd, ssh, scp, ftp, smtp, pop3, imap, и т.п.

Сеть SAFE создаётся из неиспользуемых места на диске, мощностей CPU и сетевых возможностей обычных компьютеров. Скорее всего, эти компьютеры будут принадлежать пользователям системы, но это не обязательно. Каждый компьютер будет, по сути, майнить кредиты, которые потом сможет обменять на товары и услуги. Эти кредиты называются safecoin.

Клиентские приложения

Клиенты сети получают к ней доступ посредством инновационных идей:

1. самошифрующиеся данные
2. доступ и создание криптографически безопасных идентификационных ключей на децентрализованных серверах открытых ключей
3. само-аутентификация

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

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

Обеспечивая доступ к сети, клиенты заботятся, чтобы пользователям пришлось вводить пароль только один раз. Клиент содержит множество ключей с паролями и может автоматически «входить» в любые сервисы сети. То есть, к примеру, вы сможете зарегистрироваться на веб-сайте, просто нажав кнопку «Присоединиться».

Цифровое голосование, новостная агрегация, передача секретной информации – возможно всё это и многое другое!

Свойства распределённой сети

Видение проекта – замена существующей сети из небезопасных серверов полностью распределённой, безопасной и приватной сетью. Сетью, где никто посторонний не может перехватить, скопировать, украсть и продать какие-либо данные.

Платформа предлагает распределённую сеть, позволяющую разработчикам создавать быстрые и безопасные приложения любого вида. Без необходимости приобретать API-ключи и строить инфраструктуру, разработчики не несут финансовых рисков и могут приобретать покупателей очень недорого.

Нет серверов – нет датацентров.
Сервер нельзя взломать.
Никакой цензуры в сети и контроля DNS.
DOS-атаки неэффективны из-за системы «оппортунистического кэширования».
Хранение данных без ограничения объёма, бесплатно и без транзакций.

Никаких администраторов – только пользователи.
Сеть настраивается автоматически в реальном времени.
Приватность и защита данных обеспечиваются тысячами алгоритмов, работающих на сотнях узлов.
Сеть сама решает, где хранить данные.
Исчезает необходимость планирования сети и резервирования мощностей
Никаких датацентров и админов.

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

Полная защита от перехвата паролей (они не передаются по сети).
Как минимум три разных области с разными ключами и ID, без связи между ними.
Вход в систему по имени, пин-коду и паролю.
Хранение, получение и изменение данных с отдельным ID.
Общение с другими через отдельный ID.
Более сложные системы шаринга через создание дополнительных цепочек ключей.

Создание приватных шарингов для друзей и коллег.
Создание любого количества публичных шарингов данных (веб-сайты).
Системы микроблоггинга.
Социальные сети.
Делитесь, чем угодно – музыкой, программами, фотками.

Возможна работа больших приложений на слабых устройствах.
Автоматическое распределение процессорной мощности, места на диске и памяти.
Поддержка контроля версий позволяет откаты, автоматическое и ручное слияние данных.

Приложения

Приведённые примеры приложений – малая толика того, как можно использовать сеть SAFE. Можно использовать всё, что работает в интернете сейчас, и ещё больше.

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

Лицензирование

Как и сегодняшний интернет, система MaidSafe не может никому принадлежать и никем контролироваться – она наша, она принадлежит всем (прим. перев: к сожалению, с интернетом всё не совсем так, в этом и смысл таких сетей). MaidSafe полностью анонимна, безопасна и недоступна вторжению любого рода, её нельзя контролировать и ею нельзя владеть. Эта система имеет открытый код, распространяемый под лицензией GPL3. Мы не владеем им, его может использовать кто угодно (и так будет всегда), и любой может создать свою версию проекта.

Но MaidSafe не против прибыли. Отличные продукты не существуют без отличных людей и компаний, у которых есть инвесторы.

Наша лицензия содержит условие, позволяющее создавать приложения под лицензиями, отличными от GPL, при условии отчислений в размере 1%. Эти отчисления помогут в развитии сети и в получении возврата инвестиций. 1% — достаточно небольшая сумма, чтобы поощрить создание приложений бизнесменами, предпринимателями и инноваторами, и является намного меньшим барьером, по сравнению с существующими сейчас сервисами. Сравните с 30% отчислением в Apple Store, к которому прибавлена ежегодная абонентская плата.

MaidSafe не будет оценивать клиентские приложения и банить те, кто не подходит под какие-то стандарты качества. Всё проще. Мы позволим рынку оценивать качество приложения – плохие приложения не будут использоваться. Мы уверены, что такой подход будет поощрять разработчиков сотрудничать с нами. GPL и коммерческая лицензия обеспечивает разработчиков патентной защитой для их программ. Открытые исходники позволят сторонним разработчикам проверять нашу работу и не верить нам на слово.

Safecoin

Safecoin будет внутренней валютой сети, и механизмом стимулирования и вознаграждения пользователей и разработчиков, а также способом доступа к ресурсам сети. Пользователи, предоставившие ресурсы их компьютеров, называются Фермерами (Farmers), и получают за ресурсы safecoin. Разработчики называются Строителями (Builders), и зарабатывают safecoin пропорционально количеству использования созданных ими приложений (прим. перев. – так и хочется включить сюда рейнджеров). Разработчики, улучшающие код самой сети SAFE, исправляя ошибки и добавляя новые функции, также будут награждаться через safecoin. В случае фермеров и строителей safecoin будут создаваться самой сетью и распределяться автоматически. Награда внутренних разработчиков будет определяться голосованием.

Safecoin существуют только внутри сети SAFE, они будут храниться в кошельках пользователей, и их можно использовать, покупая сетевые ресурсы – увеличенное место для хранения, доступ к сетевым приложениям. Время распространения safecoin не задано. В отличие от многих криптовалют, распространение safecoin поддерживается информацией, и их количество прямо соотносится с количеством предоставляемых сетью ресурсов.

В таблице представлены попытки предсказать распространение монет, основанные на предсказании таких параметров, как количество узлов, количество данных на узле и количестве попыток сохранения данных.


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

Верхняя граница количества монет – 4.3 миллиарда. В данный момент около 10% монет выпущено посредством промежуточной валюты под названием MaidSafeCoin, продажа которой была проведена в апреле. В сети SAFE safecoin обрабатываются специальным менеджером транзакций.



Это аналог blockchain, только в этом случае цепочки не полные, сохраняются только данные о текущем и предыдущем владельцах. В этом смысле можно сказать, что safecoin – это цифровая валюта. (Прим. перев: Да, и в России, Эквадоре и Боливии, это, наверно, будет запрещено.)

Строители


На картинке представлена структура библиотек MaidSafe.

Теперь у разработчиков есть действующая бизнес-модель, привязанная к открытым исходникам, и работает она при помощи safecoin. Закодировав свой id в приложение, вы автоматически будете получать вознаграждения, когда ваше приложение будет использоваться другими людьми.

Доступ разработчиков к сети будет бесплатным, примеры приложений будут доступны в ближайшее время. Документация по API доступна здесь

MaidSafe начинает организацию групп разработчиков, которые децентрализуют разработку сети и базу знаний, и позволят организовать мировое сообщество разработчиков. За дополнительной информацией обращайтесь на сайт

Причины для разработки на платформе MaidSafe:

— ваши приложения будут доступны всем
— никаких API-ключей – скачивай и разрабатывай
— минимальная стоимость приобретения пользователей и никаких расходов на инфраструктуру
— приложения, в реальном времени приспосабливающиеся к изменяющимся запросам
— безопасность, приватность и анонимность для всех пользователей

Фермеры

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

Каждый может стать фермером, скачав приложение для сети SAFE и запустив его в режиме хранилища (vault). Никаких сложностей с настройкой – скачал и запустил. Сеть подстраивается автоматически.

Сеть хранит данные, распределяя их случайным образом среди узлов. Фермеры вознаграждаются, когда с их узла запрашиваются данные. Система работает по принципу «доказательства наличия ресурсов» Proof of Resource (P.O.R), проверяя, что ресурс, выделенный ей фермером, действительно доступен для использования. Постоянные проверки описаны на диаграмме.


Фермер предоставляет ресурсы сети -> сеть проверяет и измеряет ресурсы -> нужно предоставлять больше ресурсов, чем используешь сам -> сеть сохраняет данные и распределяет safecoin –> фермеры получают safecoin.

Если вы решите заделаться фермером, вы сможете это сделать в конце 2014, когда сеть запустится. Ресурсов необходимо предоставлять больше, чем используешь для себя. Например, фермер, предоставляя сети 10 Гб места и использующий 10 Гб места, ничего не заработает. Фермер, предоставляющий 100 Гб и использующий 10 Гб, заработает.

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

В настоящий момент мы не можем оценить скорость, с которой будут зарабатываться монеты, т.к. на это влияет слишком много переменных. В ближайшие месяцы мы начнём тестирование сети и будем публиковать данные, полученные при тестах, что позволит точнее оценить возможности фермерства. Так как сеть случайно выбирает узлы для хранения данных, по-видимому выгоднее будет поддерживать несколько обычных компьютеров, чем одну мощную «ферму». Для дальнейших дискуссий на эту тему можно обратиться к форуму сети.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
+21
Comments 9
Comments Comments 9

Articles