Как понять, что пришло время строить свой blockchain?
Хотите создать продукт, не уступающий в популярности Bitcoin и Ethereum? Тогда пришло время браться за свой blockchain, а наша статья в этом поможет.
Децентрализованные приложения (DApps) уже давно и серьезно закрепляются в интернете. Встроенное доверие, проведение платежей, предопределенные условия контракта и отсутствие ядра системы – вот основные привлекательные предложения для многих разработчиков.
Самый популярный способ выпуска DApps – это их установка на платформы блокчейн, например, Ethereum. Распределенные социальные сети, некоторые игры и мессенджеры уже перешли на блокчейн.
Проблема в том, что каждый блокчейн имеет технические недостатки и ограничения. Если создать свой blockchain или использовать существующий, можно избавиться от ряда проблем, но вы должны быть уверены, что все сделано правильно. Разберем преимущества и причины, по которым приложению может понадобиться блокчейн, а также приложения, которые его уже используют.
Использование блокчейн-платформы
Сейчас Ethereum является золотым стандартом блокчейн-платформ. Миллиарды долларов, собранные в ICO и сотни DApps, ставят Ethereum выше любой другой платформы blockchain. Ethereum предоставит вам следующие преимущества:
- Платформа для построения практически любого типа приложений;
- встроенная нативная криптовалюта (Ether);
- большая сеть для использования;
- хороший уровень децентрализации;
- регулярные общие обновления и обновления основного кода;
- документация и поддержка.
Другие блокчейны, такие как Stellar, NEO, Stratis и EOS, предлагают нечто подобное, но с небольшими технологическими различиями.
Узкие места платформы
Работа блокчейн-систем построена по принципу протокола, и из этого следует, что производительность во многом определяется техническими решениями и компромиссами. Например, блокчейн-приложения обычно имеют слабую производительность по сравнению с централизованными. В настоящее время нет блокчейна, который мог бы запускать приложение размером с Facebook. Это происходит потому, что скоростью жертвуют ради децентрализации. Facebook является полностью централизованной системой, в которой полный контроль над всем имеют разработчики, а не пользователи.
Децентрализованные системы позволяют пользователям договориться о том, как все должно работать, и предоставляют механизм достижения консенсуса в отношении того, какие действия валидны. Этот механизм является вычислительно дорогостоящим и значительно замедляет работу системы, но для некоторых приложений удаление посредника того стоит.
Основные узкие места любой блокчейн-платформы:
- децентрализация;
- масштабируемость;
- безопасность.
Децентрализация
Причины, по которым блокчейн-платформы взлетели, связаны с их децентрализованной природой. Существуют глобальные платежные сети, такие как Visa, которые являются быстрыми и безопасными. Но они полностью централизованы, что означает наличие единой точки контроля, цензуры и т. д.
На самом деле, ни одна система не является полностью децентрализованной, но системы blockchain намного лучше, чем старые решения. Ethereum фокусируется на децентрализации, как одной из своих ключевых особенностей, хотя всегда есть споры о том, насколько она децентрализована на самом деле.
Масштабируемость
Масштабируемость – это показатель того, как легко сеть может вместить растущее число пользователей без снижения производительности. Основными показателями эффективности являются:
- время подтверждения;
- объем транзакций;
- стоимость транзакций.
Время подтверждения – это время, необходимое для прохождения транзакций по сети. Отправка Bitcoin другу займет в среднем 10 минут. В сети Ethereum выполнение транзакции займет 10-20 секунд.
Объем транзакций – это количество транзакций, которые могут произойти в сети за секунду. Bitcoin и Ethereum проводят от 7 до 20 транзакций в секунду соответственно. Это очень мало, по сравнению с 65 000 транзакций в секунду, с которыми может справиться Visa.
Стоимость транзакций – это цена, которую заплатит пользователь, чтобы вносить изменения в блокчейн. Данный показатель может сильно варьироваться. По мере того, как сеть становится перегруженной, стоимость одной транзакции может резко возрасти. Похожие случаи уже происходили в декабре 2017 года, когда цена транзакции Bitcoin взлетела до $20 и когда популярность Cryptokitties вызвала волнение вокруг Ethereum.
Безопасность
Безопасность сети показывает, насколько надежны ее криптографические алгоритмы. Как правило, чем безопаснее протокол, тем больше времени требуется для выполнения транзакции.
Жертвенность
Эта идея о том, чтобы пожертвовать производительностью в одной области и улучшить другую, поэтому, никогда не будет платформы blockchain, которая может сделать все идеально. Хотите быструю, дешевую и безопасную платформу? Тогда она не будет децентрализованной. Платформа будет становиться все медленнее и дороже, пока вы добавляете больше пользователей.
На самом деле, все блокчейн-сети упираются в выбор между такими факторами:
- Биткойн достигает безопасности, жертвуя временем подтверждения.
- Ethereum достигает децентрализации за счет масштабируемости.
- Ripple, EOS и NEO достигают масштабируемости, жертвуя некоторой децентрализацией.
Выбор платформы blockchain для вашего распределенного приложения включает в себя процесс урегулирования проблем с децентрализацией, масштабируемостью и безопасностью, которые несет в себе платформа.
Что если платформа не соответствует требованиям?
Ethereum – отличная платформа, но не для всех DApps. Если ваше приложение должно выполнять более 20 транзакций в секунду, даже всей пропускной способности сети Ethereum будет недостаточно. Следующий нюанс – стоимость. Если вы запускаете социальную сеть, будет трудно приобрести новых пользователей, т. к. им придется платить $1, чтобы обновить свой статус.
Существуют и другие площадки, такие как Stellar, IOTA, Ripple, EOS, NEM, NEO и другие. Но у всех есть свои минусы. Некоторые из них централизованы, некоторые имеют ограничения функций, а другие еще не доказали свою ценность. В этом случае может быть только одно решение.
Создать свой blockchain
Если создать свой blockchain, вы получите:
- выбор алгоритма подтверждения;
- баланс между безопасностью, масштабируемостью и децентрализацией;
- выбор языка программирования;
- управление кодовой базой;
- возможность обновления в любое время;
- максимальную гибкость.
Конечно, это утрированно, но хорошей новостью для blockchain-разработчиков является то, что вам, возможно, даже не придется начинать с нуля.
Используем Opensource
Код протокола blockchain обычно является опенсорсным (ниже мы рассмотрим несколько таких), что дает возможность использовать его, как вам угодно. Вот как появились проекты, такие как Bitcoin Cash и Ethereum Classic. Группа разработчиков решила изменить кодовую базу блокчейна, чтобы начать использовать и майнить собственную версию проекта.
Конечно, создав свой blockchain, вы обречете себя на множество проблем и нестыковок, но как без этого? Процесс кодинга сложен, а создание сети пользователей еще сложнее. Ваш протокол blockchain может иметь самые децентрализованные и безопасные алгоритмы, но если в вашей сети нет майнеров, он не децентрализован и не безопасен. Вам также придется обновлять и поддерживать код самостоятельно.
Howdoo
Howdoo – это децентрализованная платформа социального влияния, которая хочет вернуть людям контроль над социальными сетями. Продукт предназначен для построения целой социальной экосистемы, которая делает ее уникальной. Howdoo имеет некоторые уникальные особенности:
- платежи в криптовалюте;
- пользовательский контроль персональных данных;
- регулировка пользователями количества рекламы, которую они видят, и фактический заработок на ней денег;
- больший доход от рекламы для создателей контента;
- групповая модерация контента.
Но управление социальной сетью очень требовательно к ИТ-инфраструктуре. Потенциально миллионы пользователей хотят делать десятки запросов в день, причем бесплатно. Это просто невозможно на Ethereum. Можете ли вы представить, что за обновление своего статуса или загрузку видео в Facebook придется платить? Платформа Howdoo будет охватывать потоковую передачу, обмен сообщениями, хранение и т. д. Также есть план по созданию собственного кошелька, который может управлять несколькими криптовалютами.
Howdoo пока работает на Ethereum, но разработчики собираются создавать свой blockchain для удовлетворения всех потребностей:
- собственная децентрализованная потоковая передача;
- распределенное хранение данных с использованием IPFS;
- собственный токен Howdoo.
Цель состоит в том, чтобы создать экосистему, где партнеры могут запускать свои собственные DApps и выпускать свои собственные токены, используя личный социальный слой. Это решит проблему Ethereum, поддерживая массовый масштаб и имея низкую задержку с нулевыми комиссиями. Проект уже подписал свой первый DApp с Drophead Games.
Kin
Kin – криптовалюта, используемая в приложении Kik. Это популярный софт для обмена сообщениями, ориентированный на конфиденциальность. Kik экспериментирует (Kik Points) с цифровыми валютами с 2014 года. Все прошло так хорошо, что теперь они строят свою собственную децентрализованную криптовалюту для использования как внутри, так и за пределами своего мобильного приложения.
Проект стартовал в сентябре 2017 года и уже собрал более 50 миллионов долларов. Эксперимент Kik Points имел объем около 300 000 транзакций в день – намного выше того, что сейчас может обрабатывать Ethereum.
Теперь Kik ищет более элегантное решение для своей валюты. Во-первых, Stellar интегрируется вместе с Ethereum, поэтому оба могут работать в тандеме и помочь масштабироваться Kin. Транзакции Stellar все еще имеют небольшую стоимость, которая должна быть оплачена в Stellar Lumens, и чтобы при интеграции свести эту стоимость к нулю, Kik запускает свою собственную, почти идентичную версию кода. Изменение ядра даст больше возможностей для борьбы со спамом плюс способность предлагать бесплатные транзакции.
Вместо точки
Децентрализованные приложения стремительно набирают популярность. Блокчейны, такие как Ethereum, предлагают проверенную и рабочую платформу. Они обеспечивают большую функциональность из коробки и экономят много времени на кодинге и тестировании, но не могут обеспечить популярным blockchain-приложениям полного соответствия их требованиям.
Наиболее очевидными примерами являются социальные приложения, такие как Kin и Howdoo. В таких случаях нужно строить свой blockchain и развивать его.