Про форки в криптовалютах

Про форки в криптовалютах

DL

Или история The DAO, Ethereum Classic и UASF

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

Так как блокчейн - это распределенная система, при форке часто одновременно начинают сосуществовать две версии правил. О том, какие варианты развития событий возможны, и будет эта статья.

Хард и софт форк

Существует популярное ошибочное мнение, что хард форк приводит к разделению блокчейна, а софт форк - не приводит, так как он обратно совместим (backward compatible). На самом деле оба типа форков разделяют блокчейн, и ни один не является обратно совместимым.

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

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

Таким образом, разница между этими типами минимальна, просто софт форк чуть проще координировать.

Пример: если текущий блок по правилам должен быть <= 1Mb, и мы хотим увеличить его - необходим хард форк, если уменьшить - софт форк.

Что может пойти не так

Чаще всего форки происходят по банальным причинам: чтобы пофиксить баги. Биткоин, например, переживал несколько таких форков.

Каждый успешный форк (хард или софт) приводит к тому, что большая часть майнеров обновляет свое программное обеспечение. Интересное может произойти с необновившимися майнерами. В большинстве случаев они со временем обновляются (потому что иначе они не получают block reward).

Но в редких случаях какое-то подмножество майнеров не обновляется и продолжает работать над старым блокчейном. Оба блокчейна растут параллельно. И тогда получается незапланированная новая криптовалюта, как например в случае с Ethereum Classic (ETC).

The DAO, Ethereum и Ethereum Classic

Дело было в апреле 2016-ого. The DAO (decentralized autonomous organization) - это один из первых проектов на этереуме, и крупнейший проект до сегодняшнего дня. The DAO - это уникальный и почти успешный пример криптодемократии.

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

Чтобы вы понимали масштаб организации: фонд привлек более 100 миллионов долларов (до 20% всего эфира на тот момент), почти 20 тысяч человек являлись соучередителями. И это во времена, когда эфир стоил почти в 30 раз меньше, чем сейчас.

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

Неудивительно, что огромное количество людей поддержали инициативу, большинство майнеров переключили свои мощности, хард форк состоялся 20-ого июля 2016.

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

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

Биткоин и UASF

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

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

Многие видят проблему в майнерах. Они по задумке должны быть больше всех заинтересованы в развитии биткоина, а значит и в решении scaling debate. Но как обычно не все так просто. При условии сохранения спроса, майнерам выгодны высокие комиссии, потому что эти комиссии они оставляют себе. Поэтому пока они не торопятся что-либо решать. Как ответ на их бездействие был придуман UASF - user activated soft fork.

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

Это сложнее, чем обычный miner activated fork, но вполне реально. Например, пользователи могут игнорировать всех несогласных майнеров, даже если их большинство. При этом транзакции будут идти только к подмножеству согласных майнеров, и только они будут получать комиссию.

Сейчас идет активное обсуждение UASF для внедрения в биткоин SegWit'а - одного из возможных решений проблемы масштабируемости, менее выгодного майнерам. Посмотрим, чем эта история закончится... Пока я не могу быть уверен, что SegWit - это лучшее решение, да и UASF еще нужно реализовать.

Но пока это единственный механизм припугнуть майнеров и заставить их шевелиться - я только за.

Report Page