Проблемы криптовалют: метрики

07-Agda_proof

Работа Agda 2 — системы автоматического доказательства теорем. Фото: Nattfodd / Wikimedia commons

B продолжении цикла статей «Проблемы криптовалют» автор Виталик Бутерин рассматривает основные вопросы, стоящие сейчас перед криптовалютным сообществом, и возможные направления развития биткойна и криптовалют в целом.

В предыдущих частях серии речь шла о возможных направления технологии блокчейна (1, 2), о путях достижения консенсуса в децентрализованной сети (3, 4) и об экономических основах криптоэкономики (5, 6). В этой части мы обсудим вопрос о способах надежного измерения показателей криптоэкономических систем.

В мире криптоэкономики для того, чтобы что-то было вознаграждено, оно должно быть измерено. Некоторые вещи измерить просто: например, просто глядя на строку «dog5356356» и ее SHA-256-хэш «0000390f327fefc900…», вы определите, что для ее создания было проделано около 2^16 раундов SHA-256. Другие результаты вычислений, которые не могут быть проверены так очевидно, могут быть оценены «соревновательными» протоколами, где у разных игроков есть мотивация искать ошибки в доказательствах друг друга. Результаты решения математических задач обычно просто проверить вычислительно. Но не всякий результат можно оценить, просто посмотрев на него: в этом случае, как в реальном мире, так и в мире криптоэкономики, существует единственное решение: социальное (social proof).

В некоторой степени proof-of-work — это форма social proof. Транзакция A произошла раньше транзакции B, потому что большинство с этим согласилось, и существует экономическая мотивация придерживаться того же мнения, что и большинство (а именно: если майнер создаст блок не на той ветке блокчейна, этот блок будет отклонен, и майнер не получит вознаграждения). Предполагая, что большинство участников играют по правилам, они мотивированы следовать мнению большинства и говорить правду. Это соображение может быть воплощено в протокол для обмена данным общего назначения SchellingCoin, протоколы типа proof-of-bandwidth и прочие протоколы на основе того, что можно быстро оценить. Но что если оценивание небесплатно? Что если для того, чтобы понять, произошло что-то или нет, требуется приложить определенные усилия? Что если информация в принципе доступна лишь немногим? Если затраты на сбор или уровень секретности велики, необходима будет централизация; как далеко мы можем зайти на этом пути? Что мы можем измерить без механизма social proof, и что мы можем оценить без централизованного оценщика?

13. Proof of excellence

Одно из интересных и с значительной степени неисследованных возможных решений проблемы распределения (есть причины, по которым оно не может быть легко использовано для майнинга) — использовать задания, полезные с точки зрения общества и требующие человеческих творческих усилий и таланта. Например, могла бы быть реализована валюта на базе механизма proof-of-proof, который вознаграждал бы участников, предоставивших математические доказательства определенных теорем. Не существует общего алгоритма для поиска доказательства теорем, но существующие доказательства, записанные на формальном языке, вычислительно просто проверить: нужно всего лишь записать доказательство на формальном языке, на каждом шаге разрешая использовать только одно из множества синонимичных правил (например, a + b = b + a или a * (b + c) = a * b + a * c, но не a * (b + c) = a * c + b * a), и программно проверить корректность каждого шага.

Например, проверка правильности формулы разложения на множители для разности квадратов выглядела бы так:

a^2 - b^2

= a^2 - a*b + a*b - b^2

= a*a - a*b + a*b - b^2

= a*(a - b) + a*b - b^2

= a*(a - b) + a*b - b*b

= a*(a - b) + b*a - b*b

= a*(a - b) + b*(a - b)

= (a + b)*(a - b)

 

Каждый шаг доказательства может быть проверен с помощью алгоритмов поиска по шаблону. Гораздо более трудно для компьютера было бы догадаться прибавить и вычесть a*b (строго говоря, в этом случае специализированные алгоритмы могут это сделать, но в более общих случаях, включающих логику второго порядка, это становится невозможно). Заметим, что доказательство, предназначенное для компьютера, должно быть записано чрезвычайно подробно; алгоритмы на основе блокчейна, напротив, во многом основываются на простоте. Для устранения этой проблемы могли бы быть разработаны компиляторы, обрабатывающие простые предположения из двух-трех логических шагов и расширяющие краткие доказательства в более длинные и подробные.

Альтернативой proof-of-proof мог бы быть механизм proof-of-optimization, ищущий оптимальные входные данные некоторой функции с целью максимизировать определенные выходные данные (например, возможность антенны принимать сигнал), алгоритмы, включающие в себя стратегические игры или многопользовательские соревнования в области искусственного интеллекта (можно даже требовать от игроков загружать в блокчейн программы, которые потом играли бы друг против друга) и решение определенных математических задач (например, факторизация больших чисел). Заметим, что, поскольку успех в таких задачах распределен неравномерно и крайне эгалитарен, большинство этих алгоритмов не могут использоваться для достижения консенсуса; они скорее пригодны для механизмов распределения.

Задача: разработать механизм распределения по принципу proof-of-excellence, который вознаграждал бы пользователей за решение задач, которые требуют творческой работы, и одновременно приносят пользу всему обществу.

Дополнительные предположения и требования

  • Если существует точная экстраполяция уровня компетенции компьютера и человека в контексте рассматриваемой задачи, более 75% награды должно обеспечиваться человеческим трудом, хотя вспомогательное использование компьютерных программ разрешено.
  • Алгоритм должен быть «устойчивым к будущему», то есть он должен обеспечивать долгосрочную генерацию благ и не должен относиться к области, все задачи которой в конце концов будут полностью решены.
  • Распределение должно быть предельно эгалитарным, хотя это не первоочередная задача.
  • Система должна быть устойчива к атакам, в ходе которых участник отправляет решение, а для злоумышленника, даже не обладающего большими ресурсами, выгодно «подглядеть» решение и отправить заново свою более раннюю транзакцию с тем же самым решением, таким образом присвоив награду.

14. Системы противодействия атакам Сибиллы

Проблема, в некоторой степени связанная с системами репутации — проблема создания системы уникальных идентификаторов — токенов, которые бы доказывали, что данная учетная запись не участвует в атаке Сибллы. Наивная форма такого токена проста: пожертвование либо «доказательство депозита». В первом случае создание учетной записи стоит X долларов; во втором случае для активации учетной записи необходим депозит в размере Y долларов, который при определенных обстоятельствах может быть отнят или уничтожен. Тем не менее, хотелось бы иметь более элегантную и более эгалитарную систему, чем «один доллар — один голос», в идеале — «один человек — один голос».

На настоящий момент мы видим две стратегии, направленные на решение этой проблемы. Одно из возможных решений — реализовать механизм proof-of-work на основе человеческого труда, а не работы компьютеров. Это не так сложно, как может показаться: хотя компьютеры становятся все мощнее с каждым годом, существует некоторое количество проблем, которые останутся недостижимыми для компьютеров на протяжении десятилетий. Возможно даже теоретически определить класс задач, по сложность аналогичных классу NP из теории искусственного интеллекта, то есть таких задач, решение которых фактически означало бы, что искусственный интеллект способен воспроизвести деятельность человеческого разума во всей его сложности. Это, в свою очередь, означало бы, что мы находимся в утопичном мире без недостатка ресурсов и деньги, равно как и системы мотивации, возможно, уже вовсе не требуются. Эти задачи могут быть интерактивными, как CAPTCHA, хотя существующие реализации CAPTCHA далеки от приемлемого для этой задачи уровня, или интерактивные игры со стратегией, наподобие Го.

Вторая стратегия — использовать social proof, направляя силу децентрализованной информации на решение простой задачи: соответствуют ли данные две учетные записи одному человеку? Если нет, они получают по анти-сибил-токену, в противном случае они получают один токен на двоих. В общем случае мы может отдельно определить две концепции идентификации: добровольная идентификация и принудительная идентификация. Учетную запись в смысле добровольной идентификации можно рассматривать как совокупность взаимодействий, в каком-либо смысле связанных друг с другом; например, криптографическая учетная запись — это множество взаимодействий, подписанных данным публичным ключом. Учетную запись в смысле принудительной идентификации можно рассматривать как совокупность взаимодействий, в каком-либо смысле связанных друг с другом, учитывая, что сущность, производящая эти взаимодействия, пытается скрыть корреляцию между ними. Простейшая система уникальных учетных записей базируется на добровольной идентификации, встроенной в социальные сети, учитывая, что создание отдельных сущностей с независимой репутацией требует существенных затрат, так что большинство пользователей не захотят этого делать. Более совершенные системы могут пытаться определить попытки обмана, распознавая стилевые особенности языка или отслеживая IP-адреса.

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

Задача: создать механизм распределения токенов для противодействия атакам Сибиллы.

Дополнительные предположения и требования

  • Каждый человек состоит в социальной сети с характеристиками, схожими с социальными сетями, существующими сейчас в реальном мире; социальные данные могут быть надежно предоставлены криптоэкономической системе (например, через блокчейн или Ethereum-контракты).
  • Стоимость получения одного токена для человека должна быть как можно ниже.
  • Стоимость получение нескольких токенов для человека должна быть как можно выше.
  • Стоимость владения токенами для автоматизированной системы должна быть как можно выше (это более важный критерий, чем высокая стоимость владения несколькими токенами для человека).
  • Система не должна зависеть от централизованных сущностей (например, правительственных паспортных столов), обладающих возможностью обманывать систему.

15. Метрики вклада в децентрализованную систему

К сожалению, создание мотивации для производства общественных благ — не единственная проблема, которую решает централизация. Другая проблема — это определение, во-первых, какие общественные блага вообще стоит производить и, во-вторых, какой вклад те или иные усилия внесли в создание общественного блага. В этом пункте рассмотрим вторую задачу. Хотя для вычислительных задач несложно разработать «доказательство решения» (proof-of-solution), для невычислительных задач ситуация гораздо сложней. Если криптоэкономическая система хочет мотивировать пользователей создать качественный графический интерфейс пользователя для самой этой системы, как будут оценены вклады отдельных участников? Более того, как насчет квази-состязательных заданий вроде мотивирования пользователей вносить изменения в код самой системы? Что насчет децентрализованной автономной организации, финансирующей здравоохранение или пытающейся продвигать использование возобновляемых источников энергии?

Это подкласс общей проблемы «социального доказательства» (social proof); в данном случае, особенность задачи заключается в том, что данные каждого конкретного пользователя интересны очень немногим, а сбор данных может быть крайне затратным процессом. Иногда даже не существует понятия единственной «правильной» оценки ценности по заданной метрики; в случае измерения качества интерфейса может быть необходимо использовать A/B-тестирование. В случае конкурентных заданий может быть необходимо создать для оппонентов мотивацию изучить предложенное решение и попытаться опровергнуть его.

Задача: придумать и реализовать децентрализованный метод для определения того, было ли данное задание выполнено данным человеком, и для оценки качества проделанной работы.

Дополнительные предположения и требования

  • Участниками системы могут быть люди, команды людей, искусственный интеллект, простые программы и другие децентрализованные автономные организации.
  • Не существует криптографически достоверной информации о выполнении какого-либо задания; система должна опираться исключительно на некоторую форму social proof.

16. Децентрализованные метрики успеха

Еще одна связанная с предыдущими проблема метрик вклада в децентрализованную систему — проблема децентрализованных метрик успеха. На макроскопическом уровне вопрос формулируется так: как мы можем узнать, в какой степени организация достигла заявленных целей и достигла ли вообще? В случае систем, подобных Bitcoin, существует простой, хоть и не идеальный, ответ: успех может быть измерен как мощность сети. Такая постановка достаточно эффективна, но неидеальна по двум причинам. Во-первых, мощность сети — это неявное приближение цены, потому что разработка или отсутствие разработки ASIC-майнеров может исказить результаты измерения. Во-вторых, цена — это неявное приближение успеха, потому что валюта может быть более успешной даже в случае низкой рыночной капитализации, если она используется не только по прямому назначению. В случае децентрализованной автономной организации, финансирующей здравоохранение или продвигающей меры против изменения климата, такой эвристической метрики и вовсе не существует. В этом случае вновь social proof — единственный вариант.

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

Задача: продумать и реализовать децентрализованный метод измерения многочисленных показателей реального мира.

Дополнительные предположения и требования

  • Участниками системы могут быть люди, команды людей, искусственный интеллект, простые программы и другие децентрализованные автономные организации.
  • Система должна быть способна измерять любые показатели, по поводу которых люди могут достигнуть консенсуса (например, цена актива, температура, концентрация углекислого газа в атмосфере Земли).

По материалам Ethereum wiki. Автор: Виталик Бутерин.

Продолжение следует.



Categories: Инфраструктура, Криптография, Общество, Теория, Футурология, Экономика

Tags:

Leave a Reply

9 Комментарий на "Проблемы криптовалют: метрики"

Notify of
avatar
trackback
Проблемы криптовалют: децентрализованные автономные организации | Bit•Новости

[…] (3, 4) и об экономических основах криптоэкономики (5, 6, 7). В заключительной части серии мы обсудим будущее […]

DARKCOIN RUSSIA
Гость

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

Алексей
Гость

Предлагаю цикл статей Бутерина переименовать в:
«Проблемы в голове Бутерина: »
Вместо ‘
‘ стоит подставлять все проблемы.
Я думаю, так будет правильнее 😉

arvicco
Администратор

Алексей, да мы все уже поняли, что вы не любите Бутерина. 😉 Конечно, ряд посылов, которые он делает, довольно спорны, но вцелом он порой поднимает интересные проблемы. И по поводу Эфириума, я буду с большим интересом следить за этой попыткой сделать полноценно программируемые деньги. Может быть, что-то из этого выйдет, может быть нет, но в любом случае это попытка вывести криптотехнологии на новый уровень, и потому она значима. Даже, если сам Эфириум в итоге провалится, его код может быть с успехом использован где-то еще: http://bitnovosti.com/2014/11/29/counterparty-budet-ispolzovat-ethereum/.

Например, я с нетерпением ожидаю появления сайдчейна биткойна, которая адаптирует для использования эту платформу. 😉

at
Гость

Чужой код, особенно если это код Бутерина, без пол литра не разобрать, проще заново написать.
Он пишет по делу, да. Самосоздаваемые активы, чтобы с вас эфириум снимали каждый вдох, а правительства-корпорации воздух продавали…
Не спорю, круто все учитывать, все считать и автоматически формировать цену, разные доказательства, но Бутерин, ИМХО, взялся за то, что должны делать корпорации с их штатами и бюджетами. В реальности, когда 5 миллиардов человек еще даже в инет не вышли, выглядит это очень сомнительно.

arvicco
Администратор

Ну почему же, движение в сторону того, чтобы «децентрализовать ВСЕ» можно только приветствовать. Корпорации — это хорошо, но это уже старая форма организации бизнеса. Практически все, что они делают, можно реализовать при помощи ДАКов (децентрализованные автономные корпорации): http://bitnovosti.com/2014/11/30/dac-protiv-korporacii/

at
Гость

Автор, у вас ошибка в тексте, ссылки на прошлые статьи неправильные. И в этой статье и во всех прошлых.
http://bitnovosti.com/2014/11/07/vitalik-buterin-hard-problems-of-cryptocurrency-5/
Вы время забываете менять «2014/11/07».
Лайкните, чтоб заметил.

arvicco
Администратор

Спасибо что сообщили, вроде все поправили.

jonn113
Гость

«Альтернативой proof-of-proof мог бы быть механизм proof-of-optimization, ищущий оптимальные входные данные некоторой функции с целью максимизировать определенные выходные данные»
это часто приходило мне в голову.
Многое из того что он пишет, IMHO просто не является целью блокчейна, он не для этого создан).

wpDiscuz