Есть ли альтернатива «доказательству работы»? Изучаем Casper

Casper_the_Friendly_Ghost[1]

Можно сказать, что поиск альтернативы концепции «Proof of Work» превратился в криптовалютной среде в аналог поисков Святого Грааля. Мы уже не раз публиковали материалы на эту тему. Проект Эфириум в последнюю пару лет служит интересным источником технологических инноваций. Возможно, им есть что сказать и по этому поводу? В стратегии развития этого проекта особую роль играет грядущий переход на вариант системы Proof of Stake под кодовым названием Casper. Пришло время разобраться, что это за штука.

Casper — ориентируемся на наихудший возможный экономический анализ

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

Подобно любой другой цифровой валюте на основе блокчейна, всегда существует возможность атаки на сеть. Для Эфириума в его текущей реализации, атака может происходить разнообразными способами, включая сговор узлов о злонамеренном поведении. Каждый злоумышленник имеет определенный «бюджет атаки». Задачей разработчиков является сделать трату бюджета на атаку настолько невыгодной, насколько это только возможно.

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

Но Casper это нечто большее, чем только обеспечение безопасности протокола Эфириум. Проект разработан таким образом, что бы быть дружественным по отношению к легким клиентам. Считается, что эта новая среда обеспечит положительный опыт разработчиков и пользователей DApp.

Casper называют «дружелюбным привидением» потому, что он является адаптацией принципов протокола консенсуса Proof-of-Work к Proof-of-Stake. GHOST (англ.: привидение) — аббревиатура Greedy Heaviest-Observed Sub-Tree (Жадное Самое Весомое-из-Известных Дочерних-Деревьев).

Но что же насчет PoS?

Одним из старейших альтернативных механизмов консенсуса является «подтверждение доли» (Proof-of-Stake, PoS). Идея довольно проста: вероятность создать новый блок и получить соответствующее вознаграждение пропорциональна доле владения пользователя в системе (а не объему вычислительной мощности, как в PoW). То есть, держатель валюты, имеющий, скажем, 20% от общего числа монет в обороте, может создать новый блок с вероятностью 20%. Чтобы подчеркнуть отличие от PoW майнинга, в PoS системах процесс создания новых блоков обычно называют минтингом (“чеканка” блоков).

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

И хотя «подтверждение доли» является экономически эффективным Ethereum-Small1способом защиты безопасности сети, есть серьезные вопросы, которые требуют решения. Прежде всего, существет проблема «nothing at stake» (на кону ничего не стоит). Грубо говоря, узлы-минтеры могут легко подписывать все варианты блоков, в том числе мошеннические — и им ничего за это не будет. Это означает, что нормальные узлы PoS не могут достигнуть Византийского консенсуса. Кроме того, то что узлы с токенами не несут эффективных расходов, приводит к подрыву доверия к системе через распространение мошенничества. Некоторые из проблем традиционных систем PoS были описаны в этой работе исследователей BitFury.

PoS основанный на залоге может решить как минимум проблему «nothing at stake», поскольку он будет требовать опубликования информации о поведении узла в протоколе консенсуса. Это позволит применять суровое наказание к узлам, которые станут известны своим некорректным поведением в плане поддержания Византийского консенсуса. Что еще более важно, достижение консенсуса будет легко для всех, кроме злоумышленников, атакующих систему.

Вторая проблема с PoS заключается в концепции «атаки с дальней дистанции». Злоумышленники могут контролировать старые ключи, которые затем могут быть использованы для создания конкурирующей версии событий. При наличии достаточного количества ключей, находящихся под их контролем, группа злоумышленников может попытаться полностью переписать историю транзакций за долгий период, сделав форк блокчейна Эфириума.

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

Как работает Casper

Каспер – протокол экономического консенсуса на основе гарантийного депозита. Это означает что узлы, так называемые «облигационные валидаторы (проверяющие)», должны разместить депозит (это действие называется «бондинг») для того, чтобы обслуживать консенсус путем производства блоков. Встроенная в протокол возможность прямого контроля таких депозитов – главный способ влияния на размер вознаграждения, получаемого валидаторами. В частности, если валидатор произведет нечто, что Каспер посчитает «недопустимым», его депозит будет аннулирован вместе с правом дальнейшего участия валидатора в процессе консенсуса.

Использование гарантийных депозитов исключает проблему «ничем не рискую» — когда вести себя плохо ничего не стоит для нарушителя. Есть залог, поставленный на кон, и есть объективный метод оценки поведения, в результате применения которого, вложившиеся валидаторы потеряют этот залог, если будут вести себя недопустимо.

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

С другой стороны, если взять консенсус на основе Proof-of-Work, то там цепь проверки заканчивается генезис-блоком – пока вам известен генезис-блок, вы можете проверить консенсус вплоть до текущего блока. В Каспере же, вы можете проверить консенсус, если вам известен список валидаторов, размещающих депозит на текущий момент времени. Если клиент не знает текущий список валидаторов с депозитом, он должен проверить список внесетевыми (относительно Каспер) средствами. Ограничение, накладываемое на то, как именно должен проверяться консенсус, решает проблему «атаки издалека», путем наложения обязательного требования сравнения/проверки консенсуса относительно имеющейся текущей информации.

Список валидаторов со временем изменяется, по мере того, как они размещают и снимают свои депозиты, признаются валидаторами и теряют права ими быть. Следовательно, если клиенты не заходили в сеть слишком долгое время, их список валидаторов устареет и не будет пригоден для проверки подлинности консенсуса.

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

Свойство «внесетевой проверки как минимум однажды» Виталик Бутерин называет «слабой субъективностью». В таком контексте, информация называется «объективной», если она может быть проверена способом, определенным протоколом. С другой стороны, информация является «субъективной», если должна быть проверена средствами, не входящими в протокол. В слабо-субъективных консенсус-протоколах, отслеживается правило выбора форка, и клиенты должны инициализировать (и, возможно, иногда обновлять) информацию, которая используется ими в качестве правила для выбора форка, с целью проверки консенсуса. В нашем случае, это влечет выявление текущих валидаторов с действительным депозитом (или, точнее, криптографический хэш списка таких валидаторов).

Азартные игры на консенсусе

Каспер заставляет валидаторов делать ставку в размере большей части их гарантийного депозита на то, к чему склонится процесс консенсуса. Более того, сам по себе процесс консенсуса «происходит» как следствие сделанных ставок: валидаторы вынуждены делать ставки своими депозитами в соответствии с ожиданием того, как остальные сделают ставки своими депозитами. Если ставка окажется правильной, они получат свой депозит назад вместе с комиссионными, и возможным выпуском новых токенов сверх того. С другой стороны, если они не придут к согласию быстро, то получат меньше, чем составляет их депозит. Следовательно, после повторных раундов этой азартной игры, ставки валидаторов сойдутся.

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

Консенсус на базе PoW является подобной же схемой ставок: майнеры ставят на то, что их блок будет частью наиболее весомой цепочки. Если майнер вдруг выигрывает – ему достаются токены. Но если их доказательство оказывается недостаточным – на майнеров ложатся расходы за электричество без какой-либо компенсации со стороны сети. Экономическая стоимость таких PoW-ставок увеличивается линейно, в зависимости от количества полученных подтверждений (поколений потомков блока), в то время как в Каспер, валидаторы могут координировать размещение экспоненциально растущих частей своих гарантийных депозитов относительно блоков, тем самым максимально быстро обеспечивая максимальную безопасность.

«По-блочный» консенсус (порядок включения транзакций в блок)

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

  • если когда-либо размещаются ставки с суммарной вероятностью выше 100% единовременно для определенной высоты
  • или, если в аналогичной ситуации суммарная вероятность ниже 0%
  • или, если ставки на неверный блок выше 0%

то Каспер удерживает неустойку с гарантийных депозитов валидаторов, участвовавших в ставках.

Устойчивость к цензуре

Одним из наибольших рисков протоколов консенсуса является формирование коалиций, которые преследуют цель максимизации прибыли за счет тех участников, которые в коалицию не входят.

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

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

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

Что же такое Каспер в неэкономических терминах?

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

В конечном итоге, ее отказоустойчивость составляет 50%, в том смысле, что форк, созданный рейтингом более чем 50% корректных узлов, более предпочтителен, чем любой другой форк, созданный оставшимися, потенциально злонамеренными валидаторами. При этом надо отметить, что клиенты не могут быть уверены в том, что любой заданный форк, созданный с участием 51% валидаторов, не будет отменен, так как клиенты не могут знать, не являются ли некоторые из этих узлов византийскими. Следовательно, клиенты могут рассматривать блок завершенным только в том случае, если в нем принимало участие подавляющее большинство валидаторов (или гарантийных депозитов).

Заключение

Каспер и описанная выше концепция его работы на основе PoS, с высокой вероятностью будут включены в Serenity — следующий релиз Эфириума. В настоящий момент архитектор протокола Влад Замфир () приходит к консенсусу относительно деталей Каспер с Виталиком Бутериным. В ближайших планах симуляция протокола, написание неформальной и формальной спецификации, формальная проверка работоспособности, и затем имплементация Каспера.

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

По материалам: Digitalmoneytimes, Etherium Blog

Полный перевод статьи о Casper в блоге Влада Замфира: здесь

Подписывайтесь на новые видео нашего канала!
Tip



Categories: Альткойны, Безопасность, Разработчикам, Технологии, Эфир

Tags: , ,

Leave a Reply

28 Комментарий на "Есть ли альтернатива «доказательству работы»? Изучаем Casper"

Notify of
avatar
trackback
Whale Panda: Отчёт о поездке на Consensus 2017 | Заработок онлайн доступный каждому

[…] Влад Замфир @VladZamfir Но я совершенно точно уйду, если потеряю надежду на то, что сообщество Эфириума примет PoS и шардинг в том виде, в каком это подразумевается в Casper. […]

trackback
Whale Panda: Отчёт о поездке на Consensus 2017

[…] Влад Замфир @VladZamfir Но я совершенно точно уйду, если потеряю надежду на то, что сообщество Эфириума примет PoS и шардинг в том виде, в каком это подразумевается в Casper. […]

trackback
17 блокчейн-пророчеств – Bit•Новости

[…] обновление публичного блокчейна Эфириум “Casper“, в то время как EtherMint, Honey […]

trackback
Выбор инвестиционной стратегии при устойчивом росте котировок биткойна – часть 2 | Заработок онлайн доступный каждому

[…] что эндшпилем [Эфириум]-протокола является PayPal. […] Как Casper [PoS протокол Эфириума], так и консенсус Накамото [PoW протокол Биткойна] с […]

trackback
Выбор инвестиционной стратегии при устойчивом росте котировок биткойна – часть 2 – Bit•Новости

[…] эндшпилем [Эфириум]-протокола является PayPal. […] Как Casper [PoS протокол Эфириума], так и консенсус Накамото [PoW протокол Биткойна] с […]

trackback
Где же Каспер? Попытка Эфириума изобрести собственный блокчейн заново — EthereumClassic

[…] в идее, известной под кодовым названием «Casper» («Каспер», в честь доброго привидения из […]

trackback
В чём проблема «Proof of Stake»? – Bit•Новости

[…] взнос блокируется на определённый период времени (для Casper‘а Ethereum’а предлагается период в четыре месяца). Но […]

JSS
Гость

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

klenin
Гость

Что то подобное хотели придумать в 21, но пока не могут выпустит дешевый чип который позволили бы сделать узел из практического любого устройства

Влад
Гость

Как расходуются конфискованные Каспером депозиты?

Цыклоп
Гость

Хороший вопрос…

voskobojn
Гость

«В частности, если валидатор произведет нечто, что Каспер посчитает “недопустимым”, его депозит будет аннулирован вместе с правом дальнейшего участия валидатора в процессе консенсуса.»

А если каспера глюканет? Сколько людей лишаться депозитов в один момент

impgun
Участник

А если Биткойн глюканет?

btc4ever
Гость

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

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

Деньги вещь консервативная, а БОЛЬШИЕ деньги вещь КРАЙНЕ консервативная,
они всегда выберут то что попроще, понадежнее и проверенное временем.

Myr
Гость

Доработают как обычно. Хотя в таких условиях мало кто будет без оглядки входить в приведения.

Цыклоп
Гость

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

tair85
Гость

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

Posky
Гость

Так это же занятность еще, по крайней мере, на несколько лет. Искать доказательство подтверждения доказательства работы.

voskobojn
Гость

Впервые Бутерин упомянул про приведение еще летом. Как видим на текущий момент пока ничего не готово. Вполне возсожно что до конца этого года Каспер так и не будет введен

Osia
Гость

Об этом история умалчивает.

xichem
Гость

«фаза исследования и разработки может занять непредсказуемо долгое время» — и закончится чем-то типа «К сожалению, решение проблемы с этой точки зрения невозможно…» )))

Goga
Гость

Зачем? они просто перейдут к созданию еще более совершенной монеты, а этот эфир сольют хомякам 🙂

wpDiscuz