Особенности разработки приложений, использующих Steem/Golos API. Спикер: Павел Мартынов

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

Steem и Golos

На сегодняшний день можно выделить три основные экосистемы: Bitcoin и все форки, Ethereum и все проекты на данной платформе и экосистемы, построенные на Graphene.

Блокчейны Steem и Golos построены на технологии Graphene

Снимок экрана 2018-01-17 в 19.41.04.png

К преимуществам экосистемы можно отнести мощный, быстрый движок и возможности, недоступные в других экосистемах.

Сравним с экосистемой Ethereum:

Снимок экрана 2018-01-17 в 19.43.15.png

Из таблицы видны основные плюсы экосистем, построенных на Graphene:

  • Отсутствие комиссии за транзакции
  • Меньше времени между блоками - быстрее подтверждается транзакция
  • Используется консенсус алгоритм Delegated Proof of Stake - консенсус основан на том, что делегаты, не майнеры, производят блоки. Делегатов выбирают путем голосования все участники сети
  • Высокая пропускная способность (Steem и Golos - самые быстрые цепочки на сегодняшний день)

Главное преимущество экосистемы Ethereum - наличие смарт-контрактов.

Взаимодействие с цепочками:

Исходя из языка программирования, на котором написан софт можно выделить несколько основных библиотек:

Снимок экрана 2018-01-17 в 19.56.10.png

Если это Python - библиотека Pison

Для JS разработчиков - библиотека Steem JS, ее аналог для Golos - Golos JS

Библиотека Ditch - библиотека, созданная командой Steepshot для dotnet разработчиков

Взаимодействие с нодами происходит через Websocket:

Снимок экрана 2018-01-17 в 19.58.47.png

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

Общение с сетью

Общение с сетью происходит следующим образом:

Снимок экрана 2018-01-17 в 20.04.15.png

Подробнее о транзакциях в сети:

Снимок экрана 2018-01-18 в 1.40.26.png

Структуры транзакции без подписи в формате JSON:

Снимок экрана 2018-01-17 в 20.08.15.png

Затем происходит сериализация - берется каждое значение, получается его хэш и эти хэши конкатенируются друг с другом, образуя строку - это и есть результат.

Снимок экрана 2018-01-17 в 20.08.51.png

Далее происходит подписание транзакций:

Снимок экрана 2018-01-17 в 20.09.59.png

Достаточно сложный механизм - для подписания используется ECDSA Seep256k1. Если вы не сильны в криптографии и не обладаете достаточной экспертизой - можно использовать готовые решения.

Подписав хэш сообщения, добавляем полученную подпись в «signatures» транзакции и получаем:

Снимок экрана 2018-01-17 в 20.11.26.png

Архитектура приложений на Steem/Golos на примере Steepshot:

Steepshot - децентрализованное приложение, которое позволяет делиться фотографиями и получать за это вознаграждения в криптовалюте.

Технически структуру можно представить:

Снимок экрана 2018-01-17 в 20.11.59.png

Есть клиентские приложения, которые читают информацию. Для этой цели реализуется API, которое взаимодействует с Backend.

Мобильное приложение Steepshot:

Снимок экрана 2018-01-17 в 21.22.57.png

Статистика Steepshot:

Снимок экрана 2018-01-17 в 21.27.15.png

Если у вас остались вопросы:

Снимок экрана 2018-01-17 в 21.28.28.png

блокчейнgolossteemsteepshotcyberevents
117
-14.443 GOLOS
0
В избранное
cyberevents
На Golos с 2017 M08
117
0

Зарегистрируйтесь, чтобы проголосовать за пост или написать комментарий

Авторы получают вознаграждение, когда пользователи голосуют за их посты. Голосующие читатели также получают вознаграждение за свои голоса.

Зарегистрироваться
Комментарии (2)
Сортировать по:
Сначала старые