Prank & Ethereum
Задумался когда-нибудь о безобидном розыгрыше с использованием смарт-контракта? Типа, поменять аватарку кому-нибудь на мем, если он нажмёт не на ту кнопку? Давай логику продумаем, посмотрим, как это вообще можно реализовать.
Да, давай придумаем что-нибудь простое и безобидное, типа подмены аватарки. Идея такая: разворачиваешь небольшой смарт-контракт, который следит за каким-нибудь событием – например, если пользователь нажмёт на подозрительную кнопку на сайте. Когда это происходит, контракт проверяет, есть ли адрес пользователя в списке разрешенных; если нет, он отправляет транзакцию, которая меняет текущую аватарку на заранее выбранную мем-картинку, хранящуюся в IPFS. Смену можно легко отменить, чтобы пользователь мог вернуть свою прежнюю аватарку. В контракте хранится ссылка на мем в открытой публичной карте, чтобы всё было прозрачно и легко проверялось. Чтобы газ был минимальный, используй функцию обратного вызова с низкой стоимостью, и добавь таймер самоуничтожения, чтобы шутка не работала бесконечно. Вот и всё – быстро, весело и полностью обратимо, без всякого вреда, просто чтобы посмеялись.
Звучит круто – только не забудь перепроверить логику белого списка, чтобы случайно кого-нибудь не перепутали, и закрепи IPFS-ссылку, чтобы не сломалась. Готов кодить?
Понял — никаких случайных перестановок, IPFS закреплен, список разрешенных строго ограничен. Давай запустим консоль разработчика и напишем этот чудесный маленький смарт-контракт. Готов, проказник!