В декабре команда проекта Minter провела ивент, посвященный развитию передовой экосистемы и проектам, успешно развивающимся в ней, — Minter Demo Day. В ходе мероприятия была представлена серия презентаций, самая главная из которых была посвящена планам команды на 2020 год. Речь идет о масштабном обновлении всей экосистемы до версии 2.0, которая предоставит широкий инструментарий как пользователям сети, так и разработчикам, работающим с ней. О том, что ждет платформу интернета денег в следующем году, рассказывает DeCenter.

Децентрализованные приложения на Minter

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

В первую очередь в Minter 2.0 будет представлена работа команды над системой смарт-контрактов. Среди ключевых параметров, которым они должны соответствовать, чтобы быть включены в код Minter 2.0:

 Скорость

 Масштабируемость

 Функциональность

 Безопасность

На текущий момент на рынке даже в концепции не существует ни одной системы смарт-контрактов, которая полностью могла бы быть интегрирована в Minter 2.0. Поэтому еще до запуска основной сети Minter в мае 2019 года, команда предложила новый способ создания и разработки децентрализованных приложений, которые получили название mApps. В рамках данного способа разработчикам mApps необходимо было:

 Отправить транзакцию;

 В поле Payload этой транзакции добавить какую-либо команду;

 На любом языке программирования имплементировать функцию ExecuteBlock (block Block), которая смотрела бы все транзакции в заданном блоке и вычленяла нужные транзакции для дальнейшей обработки.

Так, например, игра в крестики-нолики (on-chain tic-tac-toe) ищет транзакции «Send transaction with payload SetX:1:1», «Send transaction with payload SetO:1:1» и так далее. И дальше выполняет необходимые команды к базе данных.

На основе данной концепции в сети Minter было запущено несколько mApps, однако у нее существуют довольно серьезные недостатки. Ключевая проблема такого способа заключается в том, что при нем нельзя безопасно отправить средства в mApp, а потом безопасно их запросить. В данном случае mApps будут полностью зависеть от одного разработчика сервиса, который будет иметь доступ к средствам пользователей, хранящихся на его серверах. Более того, такой способ подразумевает отсутствие прозрачности по работе такого mApp, поскольку, чтобы проверить, честно ли все происходит, необходимо было скачать mApp и обработать все блоки, что было довольно трудно.

Minter Trustless Service

Однако команде Minter удалось решить описанные выше проблемы, разработав новую концепцию запуска mApps и заложив ее в грядущее обновление. Новая концепция будет представлена в рамках Minter Trustless Services.

В привычном понимании Trustless Service — это отдельный блокчейн со своей логикой, которую пишет создатель, со своим набором валидаторов, базой данных и блоками. Валидаторы этого блокчейна имеют контроль над multisig-кошельком в сети Minter. Это позволяет пользователю отправлять монеты в multisig-кошелек в сети Minter, валидаторам Trustless Service — видеть новые транзакции и в ответ выпускать этому пользователю соответствующее количество новых монет в своем блокчейне. Юзер дальше уже может работать с этими монетами по логике этого сервиса: оплачивать действия, торговать этой монетой, сделать атомарный своп этой монетой с криптовалютой другого блокчейна. После того как пользователь выполнил все необходимые действия, он может запросить вывод этих монет. Для этого он отправляет транзакцию в Trustless Service с запросом получить монеты обратно. Валидаторы сервиса сжигают монеты, которые пользователь отправил им, и возвращают с multisig-кошелька в Minter его монеты.

С помощью этого подхода можно создавать абсолютно любую логику на базе блокчейна Minter, используя его ликвидность. Например, таким образом можно запускать игры, которые будут полностью в Trustless-сети, а их код будет доступен всем и будет обрабатываться децентрализовано. Или же таким способом запускать распределенные хранилища данных, сейфы, которые будут хранить приватные ключи, и подписывать ими транзакции. А также через Trustless Service можно подключать любые блокчейны к сети Minter и таким образом проводить, например, атомарные свопы.

Инструменты Minter Trustless Service

Однако, как отметил главный разработчик Minter Даниил Лашин, такой подход, конечно же, выглядит сложным, в первую очередь для разработчиков. В связи с чем командой было создано несколько инструментов, помогающих в работе с Minter Trustless Service.

Первый такой инструмент — Framework для Minter Trustless Service. Он позволяет:

 Заниматься только имплементацией логики приложения.

 Работать «из коробки» — все, что касается валидации, а также передачи монет из Minter в Trustless Service, работает автономно. Разработчики пишут код только для того, что относится конкретно к проекту.

 Использовать любой язык программирования.

 Декларировать интерфейс сервиса в Minter.

Также команда предоставит несколько решений для деплоя в один клик. Разработчики смогут развернуть эти решения как Trustless Service на любом сервере, выполнив одну команду. Из таких сервисов будут представлены:

 Сервис хранилища данных с оплатой в монете сервиса.

 Сервис смарт-контрактов, который будет работать на EVM (Ethereum Virtual Machine). Это также позволит использовать любые смарт-контракты, которые есть в Ethereum.

 Сервис хранилища приватных ключей, который позволит создавать адреса в сети Minter, хранить их приватные ключи и подписывать транзакции.

Далее, чтобы разработчики могли пользоваться этими сервисами, а не только их создавать, команда проекта Minter создала специальное API. Новое API автоматически находит и декодирует интерфейс заданного сервиса, покупает в Minter монеты этого сервиса, отправляет монеты в сервис (то есть переводит эту монету на multisig-кошелек валидаторов Trustless Service, как описано выше), оплачивает хранилище данных и загружает файлы. Довольно много работы происходит максимально прозрачно для разработчиков, и в то же время они может оплачивать все услуги тех сервисов, которыми они пользуются, всего через одну монету — BIP.

Примеры использования

Что касается кейсов использования, которые актуальны уже сейчас, то Даниил Лашин привел следующий пример. Так, используя следующие составляющие, можно запустить Trustless MBank, который будет работать децентрализованно:

 EVM сервисы со смарт-контрактами, только вместо эфира используются BIP или другие монеты Minter.

 Сервис хранения приватных ключей, который позволяет генерировать адреса и подписывать с них транзакции.

 Интеграцию с TON или любыми другими блокчейнами через атомарные свопы на основе этих сервисов.

Можно также использовать подобную концепцию Trustless Service, чтобы создавать абсолютно любую логику для запуска хранилищ, игр, смарт-контрактов и даже системы, которые смогут бесплатно переводить BIP другим пользователям наподобие того, как это происходит в Lightning Network.

Ожидаемый период выхода обновленной экосистемы Minter 2.0 — второй квартал 2020 года. А первые наработки и сервисы, скорее всего, будут запущены в конце января.

С полным выступлением Даниила Лашина в ходе Minter Demo Day можно ознакомиться по ссылке.