Главное Авторские колонки Вакансии Образование
Выбор редакции:
544 5 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как мы делали благотворительный аукцион в двух криптовалютах и токенах

В этой статье мы расскажем о том, как был реализован аукцион на блокчейне и с какими (и не только техническими) сложностями мы столкнулись.
Мнение автора может не совпадать с мнением редакции

Команда блокчейн-проекта TokenStars, созданного для краудфандинговой поддержки спортсменов в криптовалюте, запустила благотворительный блокчейн-аукцион со ставками в эфире, биткоинах и токенах ACE.

Как возникла идея аукциона? Во-первых, хотелось сделать что-то хорошее перед Новым годом. Во-вторых, блокчейн — идеальная технология для аукционов и для сферы благотворительности. Она решает проблему прозрачности – любой человек может проверить все цепочки и суммы. В TokenStars мы работаем с известными спортсменами, поэтому мы выбрали формат благотворительного аукциона с личными вещами знаменитостей.

В этой статье мы расскажем о том, как аукцион был реализован в техническом плане и с какими (не только техническими) сложностями мы столкнулись.

Техническая сторона

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

b_5a67bbbc2b54a.jpg

Платформа, на которой работает аукцион, состоит из двух больших частей. Сейчас проект находится, с одной стороны, на стадии реализации ICO, и для этого используется специализированная CMS для ICO, работающая на Ruby on Rails. С другой стороны, команда работает над реализацией функциональности платформы — разрабатывает 12-13 модулей. Разрабатывать модули на ICO-движке было бы нелогично, поскольку все наши рубисты были заняты другими задачами. По этой причине для платформы мы взяли другое решение, PHP-фреймворк Laravel, и поверх него реализовали функционал аукционов и все остальное.

В результате на сайте проекта одновременно работают две платформы: одна имеет дело с регистрацией и дистрибуцией токенов, а другая — с голосованием и пользователями. Базы данных пользователей синхронизированы: после авторизации каждый юзер может заходить как в личный кабинет, связанный с токенами, так и в профиль, связанный с аукционами и ставками.

Ставки в эфире и токенах ACE делаются напрямую на смарт-контракт этого аукциона, а ставки в биткоинах принимаются через платежную систему CoinPayments. Ниже я объясню, почему.

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

b_5a67bbf519f0e.jpg

Подключение платежей в биткоинах

Так как смарт-контракты выполняются на платформе Ethereum, то и принимать ставки мы могли только в эфире. Нам, конечно, этого было мало – хотелось как минимум реализовать возможность делать ставки в биткоинах.

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

К сожалению, пока это не до конца прозрачный момент: пользователям эфира приходится верить, что ставка, записанная на смарт-контракт бэкендом — реальная, а не выдуманная. Но, как уже было сказано, пока нельзя сделать смарт-контракт, который работал бы в двух блокчейнах. Мы выбрали компромиссное решение.

b_5a67bc138e597.jpg

Proxy к смарт-контракту и интеграция

Больше всего времени у нас занял не сам смарт-контракт, а прокси и интеграция. Ethereum — это сеть со своим языком. Общаться с ней можно через специальный клиент посредством HTTP-запросов или через готовые библиотеки на Go или JavaScript прямо из браузера. Мы запустили отдельный веб-сервер, и через эту дополнительную прослойку основной бэкенд общается с эфиром.

Этот сервер имеет несколько конечных точек: HTTP-адрес + HTTP-строка, куда можно послать POST-запрос, чтобы совершить транзакцию на эфире, или через GET-запрос получить историю всех событий по смарт-контракту. Таким образом, PHP-бэкенд или любой другой бэкенд, в котором нет удобных библиотек для общения с эфиром, может взаимодействовать с эфиром через прокси веб-сервер. Происходит разделение технологий: бэкенд взаимодействует со смарт-контрактом в эфире через привычные для себя HTTP-запросы, а прокси оборачивает контракт и делает в эфире все, что нужно для вызова его функций.

b_5a67bc3e6ea78.jpg

Подключение фиатных платежей

В дополнение к эфиру и биткоину мы планировали добавить возможность ставок в фиате, т. е. в традиционных валютах, чтобы снизить порог входа. Это оказалась, пожалуй, самым сложным моментом в реализации проекта: фиатные платежные системы очень настороженно относятся к криптопроектам.

Мы обратились с предложением сотрудничества к семи организациям, три из них сразу же отказали нам, как только услышали о криптовалютах. С PayOnline, OKPAY, Robokassa и рядом других сервисов мы продолжаем общаться, надеемся, что длительное рассмотрение заявок будет результативным. Процесс в некоторых случаях включает заполнение многостраничных анкет на 170+ вопросов.

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

b_5a67bc7dc23de.jpg

Фонды-партнеры

От появления идеи до ее реализации прошло всего три недели — за это время мы успели разработать техническое решение, сделать лендинг, связаться со звездами спорта и заручиться их согласием на участие. Аукцион стартовал с 12 лотами, среди которых были джерси от звезды НХЛ Никиты Кучерова, футболки экс-первой ракетки мира Мартины Хингис, футболиста Лотара Маттеуса и блокчейн-евангелиста Роджера Вера, лыжи от олимпийского чемпиона Тарьей Бё, сувениры музыканта Redfoo (ex-LMFAO) и пр.

Спортсмены, которые предоставили лоты для аукциона, уже поддерживают определенные благотворительные организации, и деньги от продажи каждого лота будут переданы соответствующему фонду. Например, Анастасия Мыскина поддерживает фонд помощи детям с синдромом Дауна Downside Up, а Мартина Хингис — фонд Right to Play, который занимается развитием детского спорта в беднейших странах мира.

b_5a67bcca512d3.jpg

К сожалению, мало какие фонды принимают криптовалюту в качестве пожертвований, поэтому собранные средства будут переведены в фиат по окончании аукциона (естественно, с отчетом, подтверждающим, что фонды получили адресованные им суммы).

Цели и задачи аукциона

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

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

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Лена Гусева
я так понял, что запустились в декабре. Фиат так и не удалось подключить? PayOnline, OKPAY, Robokassa и пр. не передумали?
Ответить
TokenStars
Первая блокчейн-платформа для знаменитостей. TokenStars связывает восходя
ellen 85607
Да, быстрого решения так и не нашли и на этом фронте пока без перемен. А вам актуально, вы бы фиатом за что-то хотели сделать ставку?
Ответить
Лена Гусева
футболка Мартины Хингис интересует, но ее уже продали :(
Ответить
Сорокина Оксана
а киви вам не подошел? у них вроде есть возможность работы с криптовалютами
Ответить
ARANEOBIT
Платежная система с использованием технологии Блокчейн
ARANEOBIT IO
Прошу прощения, если не в тему, но всё же касательно денег.
Есть системы денежных переводов, где комиссию можно установить самостоятельно. Наш проект как раз заточен под это дело. Будет интересно, заходите.
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.