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