Casper для Ethereum: как это работает

Источник: Coin Post

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

Что такое 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 — это инновационное решение, основанное на исследованиях и математическом моделировании, которое наверняка вызовет волну новых идей и предложений.

Читайте также

Добавить комментарий

Вверх