Блокчейн как облачная услуга
Начался настоящий бум технологий блокчейн. Разрабатываются новые платформы, на их базе создаются разнообразные продукты и сервисы, пробуются новые сценарии использования, формируются альянсы и консорциумы, а главное, находятся все новые и новые области применения блокчейн.
Технологии блокчейн годятся для проведения любых операций, требующих гарантированности их подтверждения, сохранности всей истории и полной конфиденциальности. Это обеспечивается использованием средств криптозащиты и распределенным хранением единого учетного реестра операций на всех клиентских узлах.
Все это интересно, но все это нужно пробовать, тестировать различные варианты. И тут на помощь приходят облачные технологии. Для любого блокчейн проекта нужны вычислительные ресурсы. Удобнее всего их получить из облака. Ведение разработки на облачных ресурсах полностью избавляет от капитальных затрат (CAPEX) на начальной стадии проекта, когда нужно быстро что-то посмотреть и оценить, от чего-то отказаться сразу и перейти к другому варианту, а на чем-то концентрироваться и дальше.
Сейчас облачные провайдеры активно рассматривают возможности расширения своих продуктовых портфелей за счет различных услуг, связанных с блокчейн. Это, прежде всего, различные средства разработки и тестирования, прототипирования и быстрого развертывания, с помощью которых можно оценивать новые платформы и делать экспресс-реализации. Готовые решения не должны быть привязаны к облачному провайдеру, они могут развертываться в любых других публичных облаках, в частных облаках, на виртуальных и физических машинах.
В данном случае речь идет о возможности предоставления блокчейн как облачной услуги - Blockchain as a Service или BaaS. Но что это такое с точки зрения классической облачной иерархии IaaS-PaaS-SaaS? IaaS (Infrastructure as a Service) предоставляет напрямую облачные вычислительные мощности. PaaS (Platform as a Service) обеспечивает определённый уровень абстрагирования, предоставляет готовую платформу (платформы) и освобождает от необходимости напрямую конфигурировать вычислительные ресурсы. SaaS (Software as a Service) дает потребителю конечную услугу и полностью абстрагируется от облачной инфраструктуры и платформы. В этой иерархии BaaS – это PaaS, это платформа для разработки блокчейн проектов. А для готовых решений можно использовать облачные ресурсы по модели IaaS или продавать конечные блокчейн услуги как SaaS.
BaaS дает возможность быстро разрабатывать и тестировать блокчейн проекты, освобождая от необходимости тратить время на настройку и конфигурирование платформ для их разработки и тестирования.
Облака могут дать реальный импульс любому блокчейн проекту. Они обеспечивают оперативность, гибкость и масштабируемость, способствуют свободе и осознанности технологического выбора. Блокчейн неизбежно придёт в облака, так как с помощью облаков можно достичь настоящей распространенности и зрелости любых решений на базе этой технологии.
Что существует сейчас?
Azure BaaS – это начало облачной истории блокчейн. Проект был запущен в ноябре 2015 года совместно с компанией ConsenSys и первоначально назывался Azure Ethereum BaaS. Он ориентирован на разработчиков и процессинговые компании. Есть и первые успехи.
В январе 2016 года банковский консорциум R3 CEV (Crypto, Exchanges, Ventures) провел тестирование межбанковских финансовых сервисов, разрабатываемых на базе платформы Ethereum. Проверялась связность, ведение реестра транзакций, аутентификация и валидация. В тестировании принимали участие: Barclays, BMO Financial Group, Credit Suisse, Commonwealth Bank of Australia, HSBC, Natixis, Royal Bank of Scotland, TD Bank, UBS, UniCredit and Wells Fargo. Тестирование происходило на облачных ресурсах Azure Ethereum BaaS.
Что такое Ethereum?
Это набирающая популярность платформа для создания распределенных приложений на базе технологий блокчейн, Основателем считается канадец российского происхождения, живущий в Швейцарии, Виталик Бутерин (22 года). Сайт проекта, где можно скачать все компоненты, средства разработки, репозитарии исходных кодов и документацию, найти ссылки на необходимые дополнительные ресурсы.
Определяющими для платформы являются следующие компоненты и подходы:
• Умные контракты
• Тьюринг-полный язык сценариев
• Ðapps – децентрализованные сервисы (уже около двух сотен приложений, и число их постоянно растет)
• Платформа реализована как единая децентрализованная виртуальная машина
• ETH – токены платформы Ethereum, называемые эфиром – виртуальное топливо для учёта использования ресурсов децентрализованной сети
• Аутентификация пользователей
Разработан Ethereum Solidity Smart Contract Language - высокоуровневый язык для виртуальной машины Ethereum (Ethereum Virtual Machine или EVM) с синтаксисом, похожим на JavaScript. Умные контракты — это специальные классы, которые могут быть реализованы на различных объектно-ориентированных языках и компилируются в байт-код EVM перед отправкой в блокчейн. Реализовывать умные контракты можно и на других языках: в Azure есть клиенты для Go и С++, но существуют они и для других языков. Изменение состояния виртуальной машины может быть записано на Тьюринг-полном языке сценариев.
Вокруг Ethereum в Azure быстро развивается экосистема. Один из ее элементов - BlockApps STRATO, первый и пока единственный платный сертифицированный продукт для Azure BaaS Marketplace. Это платформа разработки и тестирования для быстрого прототипирования Ethereum приложений. Используется микросервисная архитектура, которая поддерживает REST API. Доступен Block SDK с поддержкой Ethereum Solidity Smart Contract Language. Стоимость от 0,214 евро/час (159 евро/месяц).
Читайте также