Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
cyberevents
7 лет назад

Proof of concept with Ethereum. Solidity workshop. Alex Shkor

Проектирование децентрализованных приложений - детально изложенная тема данной лекции.

Для введения, разберем понятие «Блокчейн» с точки зрения проектирования:

IMG_0955.jpg

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

При проектировании Блокчейн первый этап - выбор инфраструктуры сети:

IMG_0956.jpg

Это может быть:

  • Блокчейн поверх существующей инфраструктуры (на сегодняшний день, это платформа Ethereum) - при разработке нет необходимости создавать сеть, проектировать алгоритм консенсуса, который будет стимулировать поддержания работы сети и вознаграждения майнеров, достаточно создать протокол по регуляции ценностей и опубликовать его в виде смарт-контракта на платформе Ethereum
  • Нативный Блокчейн - в этом случае о всех вышеперечисленных пунктах необходимо позаботиться

Следующий важный момент - масштабируемость сети:

IMG_0957.jpg

Имеет смысл заранее проанализировать потенциальный рост приложения и предусмотреть:

  • Количество транзакций
  • Оплату за проведения транзакций
  • Размер Блокчейн
  • Сжатие контента
  • Компактной реализации сообщений между нодами, чтобы им хватило пропускной способности сети
  • Масштабируемости Governance протокола или домена - управление параметрами протокола
  • Количество пользователей

Для каких целей необходим прототип Блокчейн

Если вы решили проектировать нативный Блокчейн, для начала создайте прототип на Ethereum, это поможет учесть множество особенностей и усовершенствовать собственную модель сети.

IMG_0958.jpg

Также стоит отметить, что при разработке Ethereum смарт-контракта уже существует понятный путь того, как он будет транслироваться в нативный Блокчейн, если возникнет такая необходимость.
Процесс достаточно простой, схема трансляции выглядит следующим образом:

IMG_0959.jpg

  • Доменные контракты транслируются в типы транзакций
  • Мембершип заменяется публичными ключами
  • Хранилище контрактов трансформируются в локальную базу данных
  • Появляется возможность автоматической эмиссии токенов

При проектировании Блокчейн можно выделить две основные категории:

IMG_0960.jpg

Проектирование инфраструктуры

IMG_0961.jpg

В дизайн инфраструктуры входят:

  • Дизайн протокола домена

    IMG_0962.jpg

    Для Ethereum это: базовые смарт-контракты для домена и базовое хранилище
    Для нативного Блокчейн: типы транзакций, процессинг и валидация транзакций, база данных

    • Дизайн инфраструктуры поддержки консенсуса

    Выбор алгоритма консенсуса: Proof of work, Proof of Stake, Delegated Proof of Stake и т.д.

    • Параметризация алгоритма

    Возможность изменять параметры алгоритма:

    IMG_0965.jpg

    • Инфраструктура вне Блокчейн

    Взаимодействие с данными, хранимыми в базах вне системы

    • Интеграция с другими смарт-контрактами
    • Инфраструктура для Oracle

    Важно продумать стимулы для Oracle давать валидную информацию

    • Ноды, которые предоставляют возможность пользователям не разворачивать свои
    • Юзеринтерфейс 

    Создание удобного интерфейса для пользователей

    Дизайн домена

    IMG_0966.jpg

    Для дизайна домена необходимо продумать следующие пункты:

    • Бизнес логика смарт-контрактов
    • Логика взаимодействия с базами данных
    • Управление и изменение доменной логики
    • Система идентификации
    • Логика обновления смарт-контрактов
    • Дизайн токена
      Токены могут быть разделены по целям и по свойствам:

      IMG_0968.jpg

      По целям:

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

      По свойствам:

      • Ликвидность и неликвидность, то есть возможность или невозможность передать токен
      • Токены, эмиссия которых еще возможна и невозможна

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

0
5.192 GOLOS
На Golos с August 2017
Комментарии (4)
Сортировать по:
Сначала старые