Использование открытых данных блокчейн-систем. Спикер: Александр Давыдов
Смарт-контракт как инструмент открытых данных блокчейн-систем - узкая тема фрагмента лекции, которую раскроет разработчик DAO Casino.
Смарт-контракт в контексте проекта DAO Casino
Рассмотрим процесс работы смарт-контракта на примере игры:
В игре принимают участие игрок и банкроллер, которые общаются оффчейн. Следовательно логика игры вынесена в оффчейн и участники общаются отложенными транзакциями. Правила игры в виде Logic хранятся у игрока, банкроллера и смарт-контракта. Игра начинается с того, что браузер игрока отправляет while JS (Logic представляет собой JS code), далее данная логика обрабатывается и резюмируется, например: у игрока выпало 1, у банкроллера 2, рандом - 2, значит банкроллер выиграл.
Логика может не сходиться по причине обновлений или обмана. В случае расхождения, система фиксирует данный факт и проводит процесс через смарт-контракт. На этом этапе может возникнуть проблема - если отклонения произошли по случайным причинам, то смарт-контракт зачислит выигрыш банкроллеру.
Чтобы избежать подобные ситуации, была предложена следующая концепция:
В Solidity есть функция view function, которую можно применить в логике игры.
View function принимает данные: число, которое выбрал игрок 1, игрок 2 и сгенерированный рандом, затем функция вернет ответ - кто победил в игре.
Это довольно простой код:
Из изображение можно понять: определяется профит - 10 токенов, рандом 1 или 2 и соответствующая логика игры - если число первого игрока совпадает с рандомным, а число второго игрока не совпадает - выигрывает первый игрок с профитом или наоборот. Еще один вариант - ничья. Таким образом взаимодействие происходит напрямую с логикой игры, заложенной в смарт-контракте.
Смарт-контракт - один из основных инструментов в блокчейн-системах, функциональный и инновационный. Также существуют, и постоянно появляются другие полезные инструменты, позволяющие удобно использовать технологию Блокчейн.