Casper – Ethereum: как это работает

Краткий гайд по протоколу, который призван снизить (а в конечном итоге и устранить) прибыльность добычи эфира.

Что такое Casper?

Casper — это долгожданное обновление сети Ethereum, которое позволит добавлять в блокчейн блоки, верифицированные с помощью алгоритма Proof-of-Stake.

В некоторой степени Casper (известное привидение из детских мультфильмов) является потомком GHOST (англ. призрак), или Greedy Heaviest Observed Subtree. Введенный в экосистему Ethereum в 2013 году, протокол GHOST препятствует централизации. Во время работы сети периодически создаются так называемые брошенные блоки, или блоки-сироты (успешно проверенные блоки, не попавшие в текущую цепочку); в сообществе Ethereum их часто называют «дядями», подчеркивая отличие от родительских и дочерних блоков.

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

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

Блокчейны хранят важную информацию, поэтому добавление новых блоков с минимальным потенциалом для махинаций — первостепенная задача любого алгоритма. Алгоритмы консенсуса определяют, как именно новые блоки включаются в цепочку. Наиболее распространенные из них — Proof-of-Work (PoW) и Proof-of-Stake (PoS).

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

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

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

Работа валидаторов

По своей сути протокол Casper представляет алгоритм PоS для Ethereum. Валидатор вносит ставку в смарт-контракт, запускает узел и поддерживает работу сети. Метод Casper the Friendly Finality Gadget (CFFG) отвечает за добавление блоков к цепочке. Валидаторы получают вознаграждение за свои усилия, но теряют ставку в случае проблем.

Casper выявляет нарушения, устанавливает недобросовестных валидаторов и наказывает их. Также он позволяет входить в систему новым валидаторам, а существующим — выходить из нее. Обеспечение безопасности — неотъемлемая часть Casper.

Casper имеет форму независимого модуля и связан с механизмом предложения. В настоящее время механизм предложения Ethereum основан на PоW. Таким образом, первое поколение протокола Casper связано с существующим алгоритмом PоW. В результате получается гибридная система PоW/PоS. В будущем разработчики могут отказаться от PоW в пользу иного подхода. Им может стать алгоритм на основе Round-robin (циклический алгоритм распределения нагрузки методом перебора).

Вопросы безопасности

С точки зрения безопасности есть один нюанс. Casper будет беспомощен в случае, если базовый механизм предложения блоков окажется скомпрометированным. Пока Casper получает адекватные и «истинные» сообщения от механизма предложений, он будет работать как обычно.

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

Особенности Casper

В качестве сетевого механизма Casper должен обеспечивать целостность цепочки и обязан постоянно сохранять работоспособность.

Фундаментальные особенности Casper — однозначность информации и устойчивость. Однозначность предотвращает появление в блокчейне противоречивой информации (противоречие возможно только в случае, если правила нарушает по крайней мере 1/3 валидаторов). Устойчивость гарантирует возможность завершить новый блок при условии, что минимум 2/3 валидаторов следуют протоколу.

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

Дополнительные материалы

Casper основан на теории игр, и развитие протокола связано с большим объемом исследований и математических выкладок. Во многих отношениях это сложная система. 15 ноября 2017 года Виталик Бутерин и Вирджил Гриффит опубликовали ее технические подробности.

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

Также 1 августа 2015 в блоге Ethereum было опубликовано описание от Влада Замфира.

Заключение

На данный момент алгоритм консенсуса PoW преуспел. Блоки успешно добавляются в цепочку, пользователи доверяют результату. Однако процесс идет медленно, потребляет большие объемы электричества и требует огромных расходов на оборудование. Подход Casper основан на теории игр, устраняет многие из проблем PoW и обеспечивает аналогичную безопасность.

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

Оцените статью
Blockchain Media
Добавить комментарий