Расскажем о том, как мы принимали решение о применении blockchain-сети для нового проекта. Эта история случилась в конце весны 2018 года. Мы отказались от блокчейна (AplaNet), предложенного стейкхолдером проекта и выбрали иное решение для продукта (Emercoin). NOTE: в данный момент команда AplaNet решила большинство проблем, которые мы описали ниже. Так что все моменты, на которые мы обратили внимание, имели место быть в конце весны. Мы работали над проектом, для решения бизнес-задач которого нужен блокчейн (реально нужен, а не как обычно). На его примере будем говорить о критериях выбора блокчейн-сети.
К сожалению, подробнее рассказать бизнес-кейс проекта мы, на данный момент, не можем. Поэтому статья не об этом. Сейчас большой хайп вокруг смарт-контрактов и многие компании предлагают использовать их практически в любом решении с блокчейном. Мы считаем, что бездумно выбирать смарт-контракты – это путь в никуда. Смарт-контракт – не панацея. Для решения определенного класса задач достаточно обыкновенного децентрализованного хранилища. Стейкхолдеры проекта предложили использовать сеть AplaNet. Мы эту сеть ранее не использовали, поэтому мы решили провести исследование. Популярность выхода ICO, в целом, прошла. Самые интересные истории (в том числе мошеннические) произошли в конце 2017 – начале 2018. Но это не причина быть невнимательным к деталям. По каким критериям следует оценивать блокчейн по открытым источникам: История с демкой закончилась довольно быстро — мы не смогли ей воспользоваться, попытки написать тестовые контракты приводили к багам в самой демке.  К чести команды проекта, к моменту выхода статьи они исправили все баги, которые не позволили нам попробовать демку и принять решение об использовании. Да, такое случается. Демки ломаются. Мы написали в поддержку. Ждать пока она ответит возможности не было — приступили к изучению открытых источников. Мы выяснили, что Apla — это большой инвестиционный проект, соответственно, у него должна быть достойная открытая описательная сторона, чтобы привлекать кастомеров.  В общем доступе не нашлось достаточной технической документации языка смарт-контрактов Simvolio. NOTE: исправлено командой проекта на данный момент. Хотя надо уточнить, что ссылка на язык Protypo до сих пор ведет на 404 (15 августа 2018 года). Описание реализации системы должно подтолкнуть технических специалистов использовать его. В нашем случае, мы не только не нашли сравнительные характеристики и аналитику языка Simvolio, так ещё и документации достаточной для начала работы не было. Официальный блог от разработчиков показывает открытость и желание сотрудничать со своими кастомерами. Блог, в котором в разработчики описывают решения своего продукта, — это отличная практика для продуктов вроде Apla. К сожалению, в момент изучения нами официального блога проекта, мы нашли публикации от разработчиков, датированные концом 2017 года. Создалось впечатление, что проект не поддерживается. NOTE: начиная с 19 июня в блоге начались активные публикации. Правда подавляющее большинство из них про общие блокчейн-понятия без привязки к Apla и про заключенные соглашения. Технических историй про саму Apla мы так и не нашли. Учитывая, что часть команды Apla русскоязычная, виден ориентир на рынок русскоязычных компаний, где Хабр играет порой ключевую роль в позиционировании продукта.
Единственный материал на Хабре, посвящённый именно проекту Apla. И даже он не о технических аспектах, а об инвестициях и истории успеха. Мы безусловно рады за команду проекта, но нам как кастомерам хочется знать больше реализации и процесса использования. Мы прекрасно понимаем, что аккаунты в социальных сетях существуют только для маркетинговых задач (как и все остальные обозреваемые нами площадки в принципе, но эти точно не содержат технических пояснений). Здесь суть в другом, посетив эти аккаунты в мае и сейчас (август 2018) мы видим, что они неактивны или удалены. Это точно основные аккаунты компании, потому что ссылки на них ведут из шапки сайта. Такая неаккуратность лишний раз заставляет думать, что проект не поддерживается. Канал на Youtube обладает приличным количеством качественных записей, но опять же многие из них не о самом проекте, а в целом про блокчейн. А те видео, которые описывают реализацию имеют меньше 100 просмотров (август 2018). Мы желаем проекту Apla развития и с удовольствием заново изучим его при следующем подходящем случае. К сожалению, в тот момент мы не были готовы использовать такое блокчейн решение. Наш выбор пал на Emercoin, это форк Bitcoin.Какими преимуществами обладает эта сеть и почему мы решили перейти именно на неё?  Мы в самом начале писали, что смарт-контракты не панацея. Но многие команды всё равно используют их для решения любых задач. Кроме того, что это не решение всех проблем, есть еще одна. Любой язык смарт-контрактов является тьюринг-полным. Это ведет к повышенным требованиям к безопасности кода, написанного на нем. Разработкой в блокчейнах сегодня занимаются в основном бекендеры, которые привыкли к тому, что широкая инфраструктура в бекенде организует безопасность кода. В современных блокчейн-инфраструктурах не все так радужно. Масла в огонь подливает иммутабельность выпускаемых в продакшн решений. Недаром аудит блокчейн-решений — это очень быстрорастущая индустрия сегодня. Нужно провести очень хорошую аналитическую работу перед выпуском в продакшн, так как пути назад не будет. Во всей этой ситуации хочется максимально обезопасить себя. Emercoin — это не смарт-контракты, это NVS-контракты (Name-Value Storage), по сути децентрализованное хранилище. Более того, это форк биткоина. Это гарантирует нам повышенный уровень безопасности исходного кода биткоина, который присутствует в Emercoin. В сети Emercoin нельзя (или очень-очень-очень сложно) написать вредоносный код. Emercoin поддерживает Proof of stake и Proof of work майнинг. Это гарантирует нам, что в Emercoin не произойдёт “гонка вооружений”. В данном гибридном варианте майнинга никто не сможет провести атаку 51% и умаляет усилия по увеличению мощностей для майнинга. Равновесие в работе блокчейна, при котором достигается максимальное распределение вероятностей добавления нового блока, гарантирует стабильность работы сети на протяжении долгого времени. Для долгосрочных проектов — это очень важно. Стейкхолдер проекта кроме средств на разработку вкладывает большие ресурсы в блокчейн-систему, на основе которой будет работать продукт. Name-value storage — хранилище пар имя-значение. Такое децентрализованное хранилище позволяет создавать приложение практически любого уровня, начиная от DNS и заканчивая “взрослыми” банковскими приложениями. Наличие NVS — это по сути киллер-фича этой сети. В каждом блоке Emercoin есть 25кб для привычного бекендерам (о которых шла речь выше) ключ-значение объекта. Можно просто JSON брать и записывать (шутка!). В отличие от первой рассматриваемой нами сети, готовых работающих решений с которой мы не смогли найти, c Emercoin реализовано достаточно много интересных продуктов: Это реальные применения блокчейна. Мы в тестовом режиме попробовали некоторые из этих продуктов. Свои первостепенные функции они выполняют безукоризненно. Мир криптовалют таков, что на торговлю и курс следует обращать внимание тоже. Лояльность крипто-биржевого сообщества важная вещь. Отсутствие таковой может загубить любой продукт, построенный на блокчейне. Данные на 15 августа 2018 года: Начав работать с Emercoin нам удалось связаться с главным архитектором этой сети Олегом Ховайко. Он оказался очень отзывчивым специалистом. Даже зашел к нам в чат разработки проекта и оперативно отвечает на наши вопросы прямо там. Поразительная лояльность для главного разработчика такого большого продукта. Разрабатывать в таких условиях становится действительно продуктивно и просто приятно. Мы рассказали очень коротко о процессе выбора блокчейн-сети. Безусловно, были опущены попытки рассмотреть другие блокчейны. Это сделало бы материал огромным и нечитабельным.