среда, 24 апреля 2019 г.

OddEven Game (Smart Contract)

Для изучения смарт-контрактов и возможностей написания приложений с их использованием, написал простенькую игру: "Чет-Нечет" (Odd-Even).

Тут: http://oddeven.coolsoftware.ru/web3/

В игре участвуют двое: "банкир" и игрок. За банкира играет сервис на PHP.
Банкир загадывает число, и записывает в смарт-контракт хэш от него. Затем игрок вводит свое число, которое отправляется в смарт-контракт. Потом "банкир" сообщает смарт-контракту загаданное им число (которое должно совпасть с хэшем). В конце определяется победитель: если игрок и банкир  оба загадали четное число, или оба загадали нечетное число (иными словами: игрок угадал, загадал ли банкир четное число или нечетное), то выиграл игрок. Иначе выиграл банкир.

Смарт-контракт опубликован в тестовой сети rinkeby: https://rinkeby.etherscan.io/address/0x7a21ff65b1c509c2236aeaad47e1c938e6dd921c

Для игры игроку нужно установить MetaMask (https://metamask.io/) и завести аккаунт в сети rinkeby. Получить (бесплатно) ETH в этой тестовой сети можно тут: https://www.rinkeby.io/#faucet

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

пятница, 19 апреля 2019 г.

Request ETH (rinkeby)

Получить ETH в тестовой сети rinkeby можно тут: https://www.rinkeby.io/#faucet
Надо указать ссылку на пост с адресом для получения, типа такого: https://twitter.com/vit_cs/status/1119231148654301184
===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

пятница, 12 апреля 2019 г.

Ethereum и PHP

Полезные ссылки:

API client lib for communication with geth (go-ethereum) node
https://github.com/petrhejna/geth-jsonrpc-php-client

PHP interface to Ethereum JSON-RPC API
https://github.com/digitaldonkey/ethereum-php

A php interface for interacting with the Ethereum blockchain and ecosystem
https://github.com/sc0Vu/web3.php

Устанавливаются библиотеки с пом. композера, брать его тут: https://getcomposer.org/

Подключается установленная с пом. композера либа так:

<?php require_once __DIR__ . '/vendor/autoload.php'; ?>

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru