9,5
рейтинг
23 сентября 2014 в 07:23

Разработка → Обзор децентрализованных технологий. Часть 1

Bitcoin положил основу для создания систем нового типа, принципиально новых децентрализованных сервисов, которые призваны решать различные проблемы с помощью революционной технологии Blockchain. В Рунете встречаются отдельные статьи и заметки по этой теме, но весьма разрозненно, на Хабре так же уже были отдельные публикации и упоминания на эту тему, но мы решил, что будет полезно создать обзорную серию статей и коротко осветить самые интересные проекты из этой области.

Blockchain


Блокчейны – технология распределённых вычислениях и общем консенсусе пользователей, созданная таинственным Сатоши Накамото. В ней отсутствует центральное управление, а для верификации транзакций используются P2P-сети, кодификации и криптография. Более того, транзакциями можно управлять при помощи программируемых контрактов/договоров. В блокчейне Биткоина любые транзакции не считаются легитимными (подтверждёнными), пока информация о них не будет сгруппирована в специальные структуры — блоки. Структура и информация в блоках подчиняется заданным правилам и её можно быстро проверить. Каждый блок всегда содержит информацию об одном предыдущем блоке. Это позволяет все существующие блоки выстроить в одну цепочку, которая представляет собой распределённую базу данных и содержит информацию о всех совершённых когда-либо операциях с bitcoin.

Bitcoin – это первое и самое успешное применение технологии блокчейнов, но есть и многие, многие другие криптовалюты, известные как альткоины. Более того, есть много примеров того, как новые блокчейны используются не только для криптовалютных целей – Ethereum, Ripple и Storj.io, о них мы сегодня и поговорим в первой части нашего цикла статей про децентрализованные сервисы. В свете последних событий, целью статьи является также показать, что кролики это не только ценный мех Bitcoin это не только платежная система, а новая революционная технология, которая открывает целый ряд возможностей для построения принципиально новых программных продуктов.


Ethereum


Проект Ethereum, запущенный 20-летним вундеркиндом из Канады, хочет переустроить интернет на принципах Биткоина и помочь пользователям обзавестись персональной криптовалютой. За полтора месяца предварительной продажи, было реализовано “эфира” на 31.5 тыс. биткойнов. По текущему курсу, это более $14 млн. Криптовалютный стартап является одной из самых успешных попыток краудфандинга в истории.

Zug, компания, основанная в Швейцарии разрабатывает программную платформу, которая будет использовать сеть компьютеров, похожую на сеть Bitcoin для децентрализации любых разновидностей экономической деятельности. Разработчиков будут поощрять создавать программные приложения, целенаправленно использующие такую сеть и ее прозрачный общедоступный регистр — “blockchain”, с целью избавится от посредников и снизить расходы на обмен средств, активов и информации между людьми или компаниями.

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

Эта концепция вызвала у технарей большой интерес, что вполне может объяснить успех предварительной продажи ether — цифровых, coin-подобных титульных знаков от Ethereum, которые на его сайте характеризуются, как «топливо», необходимое приложениям для работы на данной платформе.



Выпуск этих знаков, не обеспеченных какими-либо правами или прибылью от владения, еще не начался, но уже прошла кампания их предварительной продажи в неограниченном количестве, в соответствии со скользящей тарифной шкалой, где цены, указанны в Bitcoin. В конечном итоге было продано более 60 млн единиц валюты. В рамках первого раунда, который длился две недели была установлена цена в 2000 ether'ов за биткоин. Дальше значение уменьшалось на 30 единиц до самого конца продаж. Общая сумма продаж превышает практически все подобные акции по сбору средств на популярных краудфандинговых сайтах, таких, как Kickstarter и состовляет более $14 млн.

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

Согласно Швейцарскому законодательству, предварительная продажа не считается публичным выпуском ценных бумаг или валюты, но расценивается, как выпуск продукта. То есть ether рассматривается как форма ПО, на том основании, что для реализации своих программных приложений разработчикам понадобятся титульные знаки.

Мистер Любин сообщил, что сторонние разработчики в настоящее время создают «сотни» перспективных приложений на базе платформы Ethereum, включая цифровые валютные биржи, цифровые кошельки, децентрализованные программы обмена сообщениями, торговые площадки, основанные на репутации и саморегулирующиеся «умные юридические договоры».

Ethereum — воплощение идеи Виталика Бутерина, который создал черновой вариант технической документации проекта в прошлом году, в возрасте 19 лет. Идея Бутерина была смоделирована на основе ядра инфраструктуры Bitcoin, децентрализованная сеть которого вместе с blockchain-регистром устраняет необходимость работы с взимающими комиссию «доверенным» сторонними посредниками, такими, как банки, между физическими лицами.

Однако мистер Бутерин посчитал, что инфраструктура Bitcoin является слишком ограниченной для поддержки всего многообразия приложений, которое могут предложить эти проекты, поэтому он придумал Ethereum, которые предлагает совершенно новый, независимый blockchain и свою сеть майнеров.



Сейчас Ethereum доступен в бета-версии. С его помощью можно создать приложение или выпустить и собственную криптовалюту — по словам Бутерина, это требует минимальных навыков в программировании. Полноценная рабочая версия выйдет в конце этого года. В YouTube уже можно найти ролики, где первые разработчики под Ethereum показывают, как с его помощью писать код для своих приложений.

Репозиторий — github.com/ethereum

Ripple


Ripple — платежная система, валютная биржа и система переводов, разработанная Ripple Labs. Ее работа основана на использовании распределенного открытого Интернет-протокола, регистра, работающего по принципу всеобщего согласия и собственной валюте, которая

называется ripples (XRP). Сеть Ripple ставит перед собой задачу сделать возможными проведение “безопасных, мгновенных и максимально свободных финансовых транзакции любых сумм без отзыва по всему миру.” Она поддерживает работу с любыми фиатными валютами (доллары, иены и др.), криптовалютами (bitcoin, litecoin и др.), товарами или другими единицами ценности (милями авиаполетов, минутами разговора по сотовой связи и др.).

В основе Ripple лежит коллективная и открытая база данных — регистр. Помимо данных о балансе, регистр содержит информацию о предложениях купли или продажи валюты или активов, образуя таким образом первую в мире распределенную биржу. Участники сети соглашаются с изменениями, вносимыми в регистр при помощи процесса, который называется “консенсус” (англ. consensus), происходящего каждые 2-5 секунд. “Консенсус” позволяет осуществлять платежи, обмен и переводы без необходимости использования единого клирингового центра. По сравнению с криптовалютами, такими, как Bitcoin, где безопасность обеспечивается процессом майнинга, ведение регистра, основанного на “консенсусе” позволяет сети Ripple противостоять любым атакам стойко и с сохранением эффективной работы системы.

В системе Ripple, пользователи совершают между собой платежи, используя криптографически подписанные транзакции, выраженные либо во внутренней валюте Ripple — XRP, либо в других, произвольно выбранных активах (включая реальные активы, такие, как доллары, золото, полетные мили и др.). Для транзакций, выраженных в XRP, Ripple может использовать свой внутренний регистр. Для платежей, выраженных в любых других активах, регистр Ripple записывает только количество единиц, которые один пользователь отдал другому в долг. Таким образом, все подобные активы представляются в качестве долга. Это подход требует доверия, так как Ripple хранит записи только в регистре и не имеет регулирующей власти в реальном мире. Пользователи должны определить, каким участникам они верят и выразить это доверие количественно. Такое количественное выражение может быть определено для каждого актива отдельно.



Когда два пользователя, которые доверяют друг другу, производят не-XRP платеж, их взаимный кредитный баланс корректируется. Платежи производятся с учетом определенных пользователями лимитов. Для того, чтобы отправить активы между пользователями, которые не установили друг с другом доверительные отношения, система старается найти такой путь между ними, каждый промежуток которого представлял бы из себя пару доверяющих друг друг участников. В случае проведения такой транзакции, все балансы корректируются одновременно, как единое целое. Этот механизм проведения платежей через сеть доверенных участников получил название “пульсирование” (англ. rippling). Он представляет из себя цифровую версию существующей с давних времен расчетной системы хавала и также получил название “Facebook за деньги”.

При обработке каждой сделки в сети Ripple списывается 0,00001 XRP (примерно одна
стотысячная цента в долларовом выражении). Это не комиссия, взимаемая в чью-либо пользу, XRP списывается и прекращает свое существование. Подобная комиссия за сделку также установлена в весьма незначительном для пользователей размере. Но когда сеть находится под большой нагрузкой, например, когда ее атакуют, размер данной комиссии быстро увеличивается. Цель такого устройства сети заключается в том, чтобы быстро обанкротить нападающих и обеспечить бесперебойное функционирование сети. Атака на сеть Ripple может за очень короткий срок обойтись очень дорого, но для обычных пользователей она по существу остается «бесплатной».

Создатель Ripple — компания Ripple Labs. Поскольку сеть Ripple основана на бесплатном и открытом исходном коде, компания-разработчик не получает доходов от использования сети. Ripple Labs надеется заработать деньги на XRP, если мир убедится в том, что сеть Ripple является полезной, и массово воспримет протокол.

Одновременно с созданием протокола Ripple было выпущено 100 биллионов XRP. Ripple Labs планирует со временем предоставить 55 биллионов XRP благотворительным организациям, пользователям и стратегическими партнерами экосистемы. Компания сохранит часть XRP за собой в надежде на создание надежного и ликвидного рынка с целью монетизации ее единственного актива когда-нибудь в будущем.

Рублевый шлюз Ripple — rippleru.com
Вводный курс по Ripple на русском — ripple.com/ripple_primer_ru.pdf
Репозитории — dev.ripple.com

Storj.io


Storj.io — распределенная децентрализованная open-source платформа для облачного хранения данных, работа которой основана на использовании регистра транзакций Bitcoin (blockchain) и собственных peer-to-peer протоколов. Платформа также выполняет функции платежной системы, используя для этого собственную криптовалюту — StorjcoinX (SJCX), работающую на протоколе Counterparty. Кроме этого, по замыслу разработчиков, платформа будет поддерживать размещение собственных полноценных веб-приложений.

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

Пользователи также могут участвовать в работе системы в качестве владельцев нод, отдавая свободное пространство на своем диске и пропускную способность Интернет-канала при помощи специального клиента DriveShare, который будет доступен для Windows, Linux и Mac. Взамен на это, владельцы нод DriveShare будут зарабатывать SJCX или другую криптовалюту.

Разработчики платформы убеждены, что появление подобной системы позволит создать конкуренцию централизованных облачным хранилищам, таким, как Amazon S3 или Dropbox. В блоге проекта, они приводят анализ ценовой политики Dropbox, делая вывод о том, что его пользователи ежемесячно или ежегодно платят за возможность использования некоего фиксированного объема хранения, при этом нередко переплачивая за гигабайты данных, которыми они фактически не пользуются. Ценообразование Dropbox складывается из расходов на использование сторонних серверов (Amazon), поддержание инфраструктуры, аренду помещений, выплаты зарплат сотрудникам и прибыли инвесторам.


Стоимость 100% использования хранилища размером 100 Гб в течении 1 года.
Темно-синим показаны расходы на хранение, голубым — стоимость извлечения всех хранимых данных из Metadisk


Стоимость использования Storj, напротив, складывается из объективных факторов: предполагается, что пользователь платит только за фактически используемое пространство, стоимость которого определяет «провайдер» Storj, в качестве которого будут выступать обычные владельцы нод, предоставляющие пространство своих дисков для использования. Впрочем кто будет назначать тарифы и как именно будет происходить ценообразование среди огромного количества нод по всей системе, на данный момент также неизвестно.

По мнению разработчиков, стоимость сервиса, упадет в десятки, или даже сотни раз, делая его гораздо более дешевым по сравнению с классическими централизованными конкурентами. Приводятся данные, согласно которым владелец ПК-нода, обладающий среднестатистической скоростью доступа в Интернет 2.1 Мбит/c и использующий ценовую политику Dropbox, будет способен зарабатывать около 150$ в месяц.


Безопасное децентрализованное хранилище по версии Storj

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

Разработчики Storj утверждают, что помимо использования публичного регистра Bitcoin, система унаследует его механизм шифровании открытыми и закрытыми ключами а также использование криптографических хэш функций.

Проект публично заявил о себе в марте этого года на Bitcoin Hackaton Conference в Техасе, получив там награду победителя. Разработчики провели crowd-выкуп 500 миллионов SJCX, который однако не увенчался успехом: Storj не удалось набрать даже 10% от желаемой суммы в 9800 BTC.

Такой слабый результат объясняется недоверием сообщества, основанном на практически полном отсутствии какой-либо технической информации. Команда Storj не предоставила какую-либо конкретную спецификацию платформы. Единственный на сегодняшний день доступный технический документ больше похож на рекламную презентацию Metadisk и содержит информацию общего характера, критику традиционных облачных сервисов, теоретическую концепцию работы Metadisk, но не отвечает на вопросы о том, как система устроена на уровне программного кода и не дает подробностей об алгоритмах работы и используемых технологиях.

Над Storj работает команда из 16 человек, имена и фотографии которых, вместе с данными об их роли в проекте опубликованы на специальной странице официального сайта. Исходный код различных модулей Metadisk и Storj доступен в github-репозитории Storj. Фактически, работа над Storj находится на стадии разработки концепции: написанные программные компоненты не готовы даже к к полноценному тестированию, не говоря уже о запуске сервиса. Все, что доступно к изучению сейчас — идея, подкрепленная набросками кода.

Для того, чтобы добиться успешной реализации проекта, команде Storj предстоит ответить на множество вопросов. Как обеспечить защиту от атак злоумышленников (например, Sybil-атак) или эксплуатации большого количества нодов системы одним лицом? Как удовлетворить растущий спрос на объемы хранилища в случае его успеха, не обращаясь при этом к централизованным провайдерам? Как бороться с распространением запрещенного контента, использованием сервиса в террористических целях или для отмывания денег, с учетом политики полной анонимности и невмешательства?

Storj — не первый проект, направленный на реализацию идеи децентрализованного, защищенного и анонимного облачного хранилища, позволяющего запускать на своей базе полноценные веб приложения. Он в той или иной степени является конкурентом Ethereum, Maidsafe, Permacoin и некоторых других проектов, которые также работают над этой перспективной идеей, но пока еще не добились ее полноценной реализации.

Репозиторий — github.com/Storj

Заключение


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

Вторая часть — geektimes.ru/post/241426
Александр Стрелов @pokupo
карма
39,2
рейтинг 9,5
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (11)

  • 0
    MaidSafe еще забыли
    • 0
      Тоже еще сыроват, хотя конечно лучше чем storj.io. Будет о чем написать в следующий раз :)
  • +4
    Спасибо за статью. Жду вторую (и последующие) части
  • +1
    Идея распределенных систем очень близка к идеологии работы мозга. Это не удивительно — схожие требования приводят к похожим решениям. Сдается мне, что более четкое понимание аналогий могло бы помочь в разработке.
    • 0
      Интересная мысль. В этом плане больше всего на мозг похож Ethereum, где в роли отдельных центров можно представить приложения, на основе которых можно создавать другие приложения, хотя maidsafe и storj также планирую похожий функционал.
  • 0
    DVCS тоже можно считать децентрализованными системами. Правда, обычно всё равно есть какой-то Главный Авторитетный Сервер.
  • +1
    Благодарю за статью.
    Хотелось бы попросить поподробнее рассказать про Etherium и структуру приложений, которые можно с его помощью разрабатывать.
    • 0
      Да, будет интересно.

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