Запуск приложений с блокчейн на SAP Cloud Platform +8


SAP Cloud Platform — это облачная платформа, которая работает по модели PaaS или платформа-как-сервис (Platform as a Service). С её помощью компании могут разрабатывать собственные приложения, расширения или дополнения для уже существующих продуктов SAP или же создавать гибридный ИТ-ландшафт в компании при помощи интеграции между облачными или on-premise решениями.

Осенью прошлого года мы перенесли SAP Cloud Platform в российский дата-центр, чтобы облегчить разработку и использование платформы для отечественных клиентов и пользователей.

В этой статье мы расскажем о том, как быстро запустить на SAP Cloud Platform приложение с блокчейн, а также о пилотном приложении с блокчейн для пенсионных фондов.

image
Архитектура SAP Cloud Platform

Две главные задачи, которые решает платформа SAP Cloud Platform — это разработка и эксплуатация ИТ-решений (хостинг, мониторинг, масштабирование и многое другое).

Среди сервисов, которые есть SAP Cloud Platform, можно выделить несколько категорий:

— сервисы для обработки и хранения данных: in-memory, SQL, NoSQL, Big Data Services
— сервисы для разработки приложений: Java, XS/JS (внутренний язык SAP для программирования под SAP HANA), а также поддержка так называемой модели BYOL («bring your own language» — использование любого языка программирования, например, PHP, Python)
— Набор готовых технологических сервисов для создания бизнес-приложений: блокчейн-сервисы, интеграционная шина, интернет вещей и другие
— Набор готовых бизнес-сервисов: торговая корзина, программа лояльности и другие

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

SAP Cloud Platform Blockchain Services относятся как раз к последней категории готовых платформенных сервисов.

image

Какие задачи они решают:

  1. Быстрое развертывание различных блокчейн-технологий на базе SAP Cloud Platform. Сейчас в сервисе доступны технологии Multichain и Hyperledger Fabric. Multichain — технология, которая была развита на базе принципов Bitcoin, но при этом используется для создания частных или корпоративных блокчейн-сетей.

    Hyperledger Fabric — технология для создания модульных блокчейн-сетей с доступом по приглашению. Среди особенностей Hyperledger Fabric — поддержка смарт-контрактов.
  2. Внутри SAP Cloud Platform также есть сервисы, которые облегчают работу с выбранной технологией блокчейн, включая сервисы для администрирования узлов, отслеживания транзакций, работы со смарт-контрактами и т.п.
  3. Поддержка интеграции с другими бизнес-решениями SAP.
  4. Дополнительные сервисы — аналитика, администрирование приложений и другие.

Основные компоненты SAP Cloud Platform Blockchain Services:

  1. Blockchain Service for SCP (работает внутри Cloud Foundry)
  2. Provisioning of Multichain node and Hyperledger Fabric node — для управления узлами
  3. Blockchain cockpit — панель управления блокчейн-узлом
  4. Blockchain explorer — веб-приложение для быстрого доступа к информации о проведенных транзакциях
  5. Chain code deployment and invocation via REST API — дополнительные интерфейсы для быстрого доступа к функциям приложения
  6. Secure Store for blockchain certificates and keys — безопасное хранилище для сертификатов и узлов, связанных с блокчейн

Ниже приведен пример архитектуры приложения, сделанного при помощи Hyperledger.

image

Hyperledger — платформа для реализации непубличных блокчейн-сетей, доступ в который участники получают отдельно.

Например, участник входит в некий консорциум, который договаривается об использовании блокчейн-решения на основе Hyperledger. У всех участников есть полный узел, который содержит полную копию децентрализованной базы данных. Соответственно, полный узел может хоститься на любых серверах и площадках, в том числе на SAP Cloud Platform. По сути, наш клиент может развернуть над этим узлом дополнительное приложение, которое будет обеспечивать различную аналитику и операции, обеспечивающие работу узла Hyperledger.

Как выглядит SCP Blockchain Services изнутри:

image

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


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



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



Экран для работы со смарт-контрактами

С помощью данного интерфейса мы можем развернуть смарт-контракт в ноду Hyperledger, а дальше протестировать его. Существуют различные методы работы смарт-контракта — invoke и query. Метод Invoke предполагает изменение блокчейн-сети, по сути — запись определенной транзакции в блокчейн. Метод Query — это метод чтения информации, при котором мы по сути выполняем транзакцию на конкретном локальном узле, без изменений во всей блокчейн-сети.

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

Сценарий применения блокчейн-приложения: управление индивидуальным пенсионным капиталом


У SAP есть около 30 сценариев использования технологии блокчейн в бизнес-процессах. Один из них был придуман и реализован в виде пилота в России — командой SAP СНГ и нашими партнерами из компании-разработчика Execution.

У пенсии есть несколько частей — обязательная, добровольная, а также пенсионный капитал (в планах правительства). По некоторым планам часть отчислений с обязательным пенсионным капиталом будет составлять от 0 до 6 процентов, работник сможет определять эту величину самостоятельно.

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

Однако существует проблема — индустрия пенсионных фондов является высококонкурентной, с честной и нечестной конкуренцией. Это классический пример недоверенной среды.

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



Основным разработчиком сценария стала компания Execution. Вместе с нашими коллегами из SAP они разобрали бизнес-процесс и попробовали выделить те части, которые могут быть решены при помощи блокчейн.

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

В этом случае работодатель, безусловно, должен получить информацию о том, сколько ему отчислять в пенсионный фонд — но не должен знать, в какой именно НПФ уходят деньги.

Из-за этого возникает проблема с идентификацией, которая может быть решена при помощи предоставления юрлицу частичного доступа или информации нулевых знаний (zero knowledge proof). Проблема решаема через комбинацию сервисов, технологий и платформы на базе SAP Cloud Platform.

Необходимо также определить других участников этого процесса. Среди них:

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

Ниже мы приводим пример пилота системы.



Первый экран — авторизация пользователя. Возможна реализация авторизации с помощью СНИЛС или Госуслуг.



Следующий экран — это личный кабинет с аналитикой.

Блокчейн-технологии по сути являются базой данных, в них нет никакой дополнительной аналитики, графиков и других «украшательств». Поэтому в данном пилоте весь фронтенд реализован при помощи сервисов SAP Cloud Platform. Эта платформа включают в себя, в том числе, обширные возможности по интеграции с внешними системами, в т.ч. блокчейн-сетям. В данном проекте в качестве блокчейн использовалась сеть Ethereum.


Экран с выписками по операциям

Каждое начисление имеет свой номер блокчейн-ID транзакции и ID отправления. Каждый ID кликабелен и содержит технические детали.

В системе также есть световой статус о проведении транзакции. Жёлтый означает, что транзакция находится в процессе, зелёный — что она подтверждена всеми узлами сети (и изменить её невероятно сложно). В результате все начисления видны и хранятся достаточно надежно.


Экран смены тарифа

Пользователь получает возможность менять свой тариф один раз в течение определенного временного периода. Сейчас для этого необходимо уведомить большое количество инстанций, что занимает порядка 1 месяца. В системе же тариф меняется за 1 клик.


Экран смены пенсионного фонда

Ещё один пример того, как можно поменять текущие процессы — это изменение процесса смены пенсионного фонда. В системе на базе блокчейн это делается мгновенно — и уже ни старый НПФ не будет задерживать документы, ни новый не сможет откладывать обработку документов у себя.

Кто может стать конечным клиентом для реализации данного сценария на практике? Скорее всего, это консорциум негосударственных пенсионных фондов или же работодателей. Единого интересанта в этой системе не может быть определению, из-за использования децентрализованных технологий распределенного реестра.

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


Схема: с какими ещё сервисами можно связать блокчейн-приложение

Важно понимать, что это решение в текущем состоянии — только инновационный сценарий SAP. В дальнейшем по нему может быть составлен бизнес-кейс с бизнес-моделью расчета того, сколько денег тратится сейчас и сколько может быть сэкономлено при переходе к новому бизнес-процессу. Нашей задачей при разработке было продемонстрировать возможность технической реализации данного сценария, что он действительно он работает. Дальше всё будет зависеть от деталей пенсионной реформы и действий правительства.

Если вы хотите самостоятельно протестировать SAP Cloud Platform, зарегистрируйтесь на сайте SAP Cloud Platform.




К сожалению, не доступен сервер mySQL