Майнинг криптовалюты на ногах, или что такое «Proof of Walk»?
Услышав про майнинг криптовалюты, вы представляете, конечно, длинные ряды видеокарт с огонёчками или ряды серверов, жрущих электричество и греющих воздух аки стая драконов. Всё так и есть, но сегодня мы поговорим про другой майнинг. И видеокарты тут ни при чём.
Майнингом на ногах, или “Proof of Walk” в шутку назвали поиск криптовалюты в приложении дополненной реальности IZX. Кто не знает – это такая мобильная игра, где вы ищете криптомонетки, как покемонов, на карте, а потом ловите себе в кошелёк камерой в режиме дополненной реальности.
Несмотря на то, что это просто забавная игра, криптовалюта в ней имеет реальную ценность в виде призов, скидок, или эквивалента в криптовалюте. В общем, люди толпами ходят и ищут эти монетки вокруг себя, зарабатывая их ногами, поэтому так и назвали – майнинг на ногах.
Выражение “Proof of Walk” появилось позже, как перекличка по звучанию и смыслу с термином “Proof of Work”, ради которой как раз и строятся те самые фермы с видеокартами.
Просто шутка или за этим стоит какой-то больший смысл?
Давайте разберёмся!
Зачем нам скрипач?
Сначала давайте вспомним, зачем эти видеокарты греют воздух и что такое Proof of Work. Доказательство работы. А по сути это – искусственное препятствие, чтобы блоки добавлялись в цепочку не слишком просто и не слишком быстро.
Майнерам разрешают добавить блок в блокчейн цепочку, только если они решат сначала задачку. Условие задачки очень простое – подобрать seed для подсчета hash блока, чтобы N первых цифр были нулями. Чем больше N, тем сложнее задачка. Условие простое, но про саму задачку такого не скажешь. При больших N решение настолько непростое, что для её решения люди паяют спецпроцессоры на базе ASICS ( специализированных програмирумых чипов ) или лишают детей компьютерных игр, и строят такие вот фермы из видеокарт:
Зачем нужно искусственно усложнять добавление блока в блокчейн, который и так не шибко быстрый?
Чтобы ответить на этот вопрос надо сначала ответить на другой: какую главную проблему решает блокчейн? Проблему доверия без доверенной стороны.
Осмыслим это: в сети, где ни один участник не доверяет ни одному другому участнику, нужно доверять каждому биту информации.
Часть решения этой проблемы покрывает использование несимметричной криптографии. Мы можем быть уверены, что участники действительно владеют учётными записями, с которых производятся транзакции, за счёт проверки пары цифровой подписи открытым ключом.
А вот вторая часть проблемы как раз не решается строго математически и требует некоторой эмпирики. Одна из таких проблем – защита от двойной траты одних и тех же денег ( так называемый «double spending problem» ).
Миша обманывает Катю, делая "то же самое" с Иваном
Злоумышленник может сделать два блока и в каждый из них включить перевод денег двум разным получателем. При этом один блок он вставит в одну цепочку блокчейн, а другой блок – в другую цепочку, например, на разных серверах (nodes) в сети блокчейн. Такая ситуация называется fork “вилка” и блокчейн сеть умеет её решать, выбирая, какая из цепочек будет расти, а какая должна умереть. Но нет никаких оснований у самой сети выбрать, какая из цепочек правильная, да и вообще что такое «правильная» - это скорее философский вопрос в этом случае, а не математический.
Решение, какую цепочку блоков выбрать, принимается за счёт «консенсуса». Несколько упрощая можно сказать, что тот майнер, который создаст («намайнит») следующий блок и решит, какая цепочка верная. Обычно этого недостаточно, и цепочка должна продолжится еще на несколько ( обычно 5-8 ) блоков, чтобы получатель был точно уверен, что перевод сделан именно ему и никому более.
Если бы каждый мог добавлять блоки в цепочку с любой скоростью и без затрат, то понятно, этот механизм не смог бы работать. Действительно, чтобы цепочку нельзя было подделать, надо, чтобы для повторного создания этих 5-8 блоков нужны были ресурсы, которых нет ни у кого в мире. И отсюда как раз появляются эти надуманные задачи про hash, видеокарты и дети без игрушек.
Суммируем: можно доверять тому, на что потрачены ресурсы
Интересно в этой истории то, что компьютеры, работающий на майнинг, можно рассматривать как некое сообщество, которое «само» решает, что такое хорошо и что такое плохо. Это, конечно, не так. На самом деле, за компьютерами стоят люди, которые получают с майнинга финансовую выгоду и именно она заставляет их во-первых, вообще майнить, а главное, вести себя «правильно». Сеть платит майнерам комиссию за каждый новый блок и им экономически невыгодно не соблюдать правила и искать способы обмануть систему.
Именно денежная компенсация за майнинг позволяет доверять блокчейну.
В сумме всё вышесказанное может казаться переусложнённой конструкцией, так оно и есть. Блокчейн - действительно непростая штука. Но если вы задумаетесь над сложностью той проблемы что он решает, проблему доверия без доверенной стороны, то думаю, найдёте этому оправдание.
Причём тут ловля покемонов?
Посмотрим на игру IZX с точки зрения майнинга. Игроки ставят мобильное приложение, у них появляется карта с расположением ближайших монет. Если подойти к монете ближе, то появляется прицел и монету можно поймать камерой.
Игрок сначала должен найти монету на карте и подойти к ней на близкое расстояние, несколько метров. Обычно монет не так много, как показано на снимке экрана вверху, и иногда к монете не так просто подойти. Однако по анализу действий игроков мы видим, что сложности в поиске токенов никого не останавливают, и если игрок уж начал их искать, то он увлекается и собирает, и собирает…
Игроки тратят время, проходят или проезжают расстояния, чтобы поймать токен. Вроде бы затраты на потраченное время, усилия, и, возможно деньги на транспорт, должны компенсироваться удовольствием от игры и ценностью приза. Обратимся к средним данным, которые мы собрали в процессе нескольких проведенных акций
В таблице приведены средние данные для трёх разных акций с разными видами призов. Первые две проходили в городе Казани. Среднее пройденное расстояние для поиска одного токена в городе – около 2 километров и на поиск в среднем уходило 16 минут.
Третья строка в таблице – акция в помещении Иннополиса, где проходила конференция «Блокчейн – новая нефть России». Помещение немаленькое, кроме того, часть токенов была разбросана на прилегающей территории. Пройденное расстояние существенно меньше, чем в городе, но время на поиск токена практически то же самое.
Давайте выразим затраты игрока как сумма времени и расстояния с некоторыми разумными коэффициентами. Для расчётов мы приняли, что 1 час «майнинга» игрока стоит 300 руб., а 1 пройденный километр стоит 10 руб. Цифры взяты из общих соображений о стоимости общественного транспорта, бензина и цены на такси Uber. Получилась такая таблица:
Цифры не сильно отличаются, хотя, очевидно, в помещении «майнить» выгоднее.
Майнинг ногами
Хотя приведенные в таблице выше цифры условных затрат «майнера» на токен получены из данных от разных акций, они весьма похожи. Затраты игроков на поиск токена обосновывают его стоимость. В самом деле, курс Bitcoin и Ethereum вначале был обусловлен исключительно стоимостью майнинга, поскольку не было другим обменных и расчетных операций, по которым можно было его определить. Пока ни один товар в магазине нельзя было купить за криптовалюту, она «стоила» столько, сколько электричество для её выработки.
«Хитрые» блокчейны повышают сложность майнинга и постепенно курс биткоина «к электричеству» растёт. Ну а потом вы знаете, что дальше происходит – когда валюта становится расчётной в магазинах, спекулянты начинают влиять на курс гораздо в большей степени, чем стоимость электричества.
Также и токен IZX, который ищут игроки, вначале оценивается по тому же принципу затрат на майнинг. Условно, сейчас он «стоит» 84 рубля. Если отбросить фактор удовольствия от игры, то за эту сумму его купить так же выгодно, как и «майнить ногами».
Рекламодатели, которые размещают свои рекламные акции на токенах IZX и получают новых клиентов себе в заведения, определяют второй фактор роста стоимости токена. Аудитория игроков растёт, и рекламодатели борятся за возможность использовать токен IZX для привлечения клиентов. Фактор спроса будет определять рост курса токена в дальнейшем, аналогично другим криптовалютам.
Proof of Walk
Токены IZX не просто собираются игроками, а правильно «майнятся». Так как рекламодатель платит за разбросанные токены и получает за это новых клиентов и покупателей, то он определяет, какие именно клиенты ему нужны.
То, что в шутку назвали «Proof of Walk» - это доказательство, построенное на основании действий игрока, что для рекламодателя он ценен и поэтому он может бороться в игре за право подобрать его токен.
Хотя к выработке блоков в блокчейне это не имеет никакого отношения, но к принципу обоснования доверия «Proof of Walk» вполне применим. В первую очередь, это доверие рекламодателя к качеству аудитории, и даже персонально к игроку.
Вспомним основные выводы, которые мы сделали выше, анализируя традиционный майнинг «Proof of Work»:
можно доверять тому, на что потрачены ресурсы и денежная компенсация за майнинг позволяет доверять блокчейну.
В случае Proof of Walk оба принципа выполняются, только не между компьютерами, связанными в сеть, а между людьми в обществе.
Какая польза от майнинга?
Прикладной пользы в том, чтобы жечь электричество и считать бесполезный hash, нет. Поэтому все новые проекты блокчейн-платформ стараются уйти от этой модели в пользу менее ресурсоёмких, таких как Proof of Stake (POS).
Принцип POS в том, что доказательством вашей правоты служит размер вашего кошелька, помноженный на время его обладания. У этого подхода, на мой взгляд, возможны проблемы.
POS приравнивает ресурсы к собственной внутренней криптовалюте при построении своего доказательства, подобно Мюнхгаузену, который вытаскивает себя за волосы из болота. Вызовет ли это реальные проблемы для POS – покажет время, пока что единственной доказанной на практике модель является всё же Proof of Work.
Общество должно тратить дополнительные ресурсы для доказательства доверия, и в этом основная польза от майнинга. Возможно, в будущем майнинг не будет таким бесполезным, как традиционный Proof of Work.
Недавний пример полезного майнинга – проект Storj, где валюты можно зарабатывать предоставлением собственного дискового пространства для хранения сторонних данных. Или проект Golos, в котором валюта зарабатывается написанием интересных статей.
Мы уверены, что будущее за симбиозом майнинга с некой полезной деятельностью, и именно эта характеристика будет подтверждать ценность криптовалюты.