2017 год был годом Эфириума. Не только из-за экспоненциального роста цены на ETH, но благодаря широкому росту популярности использования его смарт-контрактов для проведения ICO. Ethereum надежно застолбил за собой второе место по рыночной капитализации. Однако это все ещё очень молодой проект и сотни ICO, которые выпускают на нем свои токены, а также различные игры, на подобии CryptoKitties, к сожалению, пока чуть ли не единственные способы его применения.
Что не так с Эфиром?
На основе Ethereum сейчас разрабатывается множество децентрализованных приложений. Некоторые из них работают над воплощением идей поражающих воображение, но пока для разработчиков dApps наличие рабочей альфы своего продукта уже является большим достижением. Потому пройдет ещё не один год пока децентрализованные приложения станут мейнстримом.
Тем не менее, из-за огромного количества токенов, которые работают на блокчейне Ethereum, нагрузка на сеть зашкаливает. Люди стали замечать снижение скорости обработки транзакций из-за перегрузок, и повышение цен на Gas.
Кроме этого, неоднократно возникали вопросы к безопасности протоколов Ethereum. Специалисты находили большое количество уязвимых смарт-контрактов, взламывался десктопный кошелек Parity, вследствие чего было заморожено ETH более чем на 100 млн. $, пресловутый хак The DAO, и т. д.
А тут ещё и BITMAIN разработал ASIC для алгоритма Ethash, что привлечет в экосистему промышленных майнеров, которые склонны сразу сливать добытые монеты, чтобы покрыть издержки. Словом, навалилась куча разноплановых проблем, на решение которых у девелоперов уйдет немало времени, сил и нервов. Но на некоторые вопросы у них уже есть ответы.
Что ещё за Casper?
Стоит отметить, что разработчики Ethereum – парни не из робкого десятка, и, в отличие от разработчиков Биткоина не стесняются вносить в систему глобальные изменения, и выкатывать масштабные апдейты. Один из таких апдейтов, о котором активно заговорили в конце 2017 года – Casper.
Как известно, сеть Ethereum использует proof of work (PoW) в качестве механизма консенсуса. Но Виталик Бутерин неоднократно заявлял, что PoW устаревший и слишком расточительный способ поддержания консенсуса в сети, и что в будущем Ethereum обязательно перейдет на proof of stake (PoS), как только сможет реализовать этот механизм достойным образом на программном уровне. А пока это добиться не удалось, за неимением альтернативы, приходиться полагаться на PoW.
То есть, Casper – это просто название подхода разработчиков Ethereum к решению проблемы достижения консенсуса при помощи PoS. Есть два этапа внедрения Каспера.
1. FFG (Friendly Finality Gadget). Этот вариант был предложен самим Виталиком. Его смысл заключается в объединении PoW и PoS. Это пока не PoS в чистом виде. Задача FFG – обкатать схему PoS на мейннете, и начать постепенно отучать людей от майнинга. При этом майнинг на железе все ещё присутствует, но каждые 50 блоков проходит голосование участников по системе PoS для создания исторической контрольной точки сети, которая подтверждает правильность и неизменность всех блоков до предыдущей контрольной точки. Подобная система чекпойнтов впервые была внедрена ещё в 2012 в монете Peercoin. FFG уже работает на тестнете, и вполне может стать частью апдейта Constantinople, который должен состояться в этом году.
2. CBC (Correct-by-Construction). Концепцию предложил другой ключевой разработчик Ethereum – Влад Замфир. Это решение пока ещё на стадии исследования возможных путей реализации, и находиться намного дальше от практического применения. Этот подход полностью переосмысляет то, как должен работать механизм консенсуса. Его смысл заключается в том, что участники сети должны будут внести определенную сумму в ETH в качестве страхового депозита, чтобы принимать участие в формировании консенсуса сети, валидируя транзакции. В случае если валидатор совершает неправомерные действия, которые вредят целостности и корректности работы сети, он теряет свой депозит. Философия простая: «Играй по правилам, или будешь наказан». Сам Виталик говорил, что стать валидатором будет недешево. Нужно будет внести депозит размером от 1000 ETH, чтобы получить это право.
Нод валидатора транзакций в сети Ethereum всегда должен быть онлайн, но поскольку для PoS не надо содержать много железа, которое потребляет электричество, содержать нод будет гораздо экономнее, чем ферму.
Casper решит проблему чрезмерного потребления энергии на абстрактные вычисления, и положит конец гонке вооружений пулов майнящих ETH. Благодаря отсутствию необходимости постоянно продавать добытые монеты, Эфир может приобрести статус инвестиционного актива, что увеличит его ценность в глазах инвесторов.
В своем блоге Виталик рассуждал, что для реализации CBC в Каспере понадобиться заморозить на «депозитах» около 10 млн. ETH, и что ожидаемая прибыль валидаторов будет составлять 5% в год. В процентном соотношении вознаграждение кажется незначительным, но попробуйте умножить 500000 ETH на текущий курс, и увидите, на часть какого пирога будут претендовать валидаторы сети Ethereum.
Есть надежда, что CBC запустится на мейннете в апдейте Serenity, который назначен на конец 2019 года. Но это пока не точно.
Дилемма блокчейна
На данный момент, каждый нод сети Ethereum должен поочередно обработать каждую транзакцию, проходящую через сеть. Это гарантирует блокчейну высокий уровень безопасности. Однако в такой сети не может быть высокой пропускной способности из-за того, что обработка каждой транзакции на EVM (Ethereum Virtual Machine) ведется последовательно, а не параллельно. Из-за этой особенности каждая транзакция «стоит в очереди» и ждёт, пока её обработают.
Есть 3 ключевые свойства, объединив которые можно получить идеальный блокчейн.
- Децентрализованость
- Масштабируемость
- Безопасность, надежность
Сейчас действует аксиома, согласно которой блокчейн может обладать только 2 свойствами из 3. Каким-то одним всегда приходиться жертвовать.
Если блокчейн масштабируемый и безопасный, значит в нем присутствует та или иная форма централизации. Сейчас Ethereum децентрализованный и безопасный (надежный).
Но как внести в это уравнение ещё и масштабируемость?
Пока что, наиболее близкими к рабочему состоянию являются, так называемые, протоколы второго уровня или оф-чейн протоколы, такие как Plasma, и Raiden (аналог Lightning Network для эфира). Все это интересные концепции и подходы, но у них есть свои недостатки. Платежи, проведенные с помощью этих протоколов, не заносятся в блокчейн, что значительно ограничивает количество сценариев, в которых эти инструменты можно безопасно для себя использовать. Проще говоря, необходимо доверять тому человеку, которому вы будете отправлять средства таким способом. То есть, из уравнения выпадает безусловная безопасность.
Но как же решить проблему масштабируемости главного блокчейна, не прибегая к разным ухищрениям? Для этого придется переизобрести весь протокол и принципы его работы заново. Бутерин предлагает решение, которое называется шардинг.
Разбить блокчейн в дребезги
Шардинг разбивает блокчейн Ethereum на множество независимых частей, осколков (англ. shard – осколок), в каждом из которых хранится собственная история транзакций. В каждом шарде будут ноды-валидаторы, которые будут обрабатывать и записывать в блоки транзакции только из этого шарда. Прелесть в том, что эти операции могут проходить во всех шардах параллельно, увеличивая пропускную способность сети.
Задача нодов, собирать и сохранять в блоки следующую информацию об изменении состояния своего шарда:
- Порядковый номер шарда в системе (например, №9)
- Информацию о состоянии шарда до проведения транзакции
- Информацию о состоянии шарда после проведения транзакции
- Цифровые подписи минимум от двух третей нодов этого шарда, которые подтвердят, что все вышеперечисленные переменные у каждого из них совпали. А это значит, что транзакция проведена по правилам.
Далее, все блоки с информацией об изменении состояния каждого шарда системы собираются в один блок, который добавляется в главный блокчейн Ethereum. Блоки в главном блокчейне формируются нодами более высокого порядка.
Осколочный блокчейн, назовём его так, можно представить в виде фрактала. То есть, основной блокчейн состоит из множества подобных ему маленьких блокчейнов, которые, в свою очередь, тоже могут делиться на ещё более маленькие блокчейны, дополнительно деля каждый шард на шарды и т. д.
Такой подход обеспечил бы ещё большую скорость обработки транзакций. Успешная практическая реализация даже одноуровневого шардинга послужила бы доказательством концепции и значительно продвинула технологию вперед, открыв новые возможности для независимых разработчиков.
Отдельным вызовом такой архитектуры является необходимость наладить технологию общения участников сети находящихся в разных шардах. И сделать это необходимо таким образом, чтобы процесс происходил автоматически, под капотом системы, не создавая дополнительных трудностей и преград для пользователей и разработчиков децентрализованных приложений.
Апдейт Каспер и последующее внедрение шардинга (пока не выйдет Каспер шардинга нам не видать) – это основные задачи команды разработчиков Эфириума, над которыми они будут работать в ближайшие год-два.
Вывод
Высокая конкуренция очень позитивно сказывается на темпах развития технологии. Наличие у Ethereum целой плеяды интересных, дышащих в затылок схожих проектов в лице EOS, NEO, QTUM, Cardano и пр., не дает парням из Эфириума спокойно почивать на лаврах в качестве лидирующей платформы для создания dApps и проведения ICO, а заставляет придумывать все новые и новые решения, которые толкают прогресс вперед.
Также радует, что интерес широкой аудитории к криптовалютам и блокчейну значительно ослаб сравнительно с концом 2017 года. Это даст больше времени этим талантливым молодым людям довести до ума технологию, которая, как все говорят, изменит мир.
Очень импонирует, что команда Ethereum не пытается срезать углы, а действительно ищет решения проблем путем изобретения новых подходов и технологий. Конечно, не все получается идеально и по ходу совершается множество дорогих ошибок. Но по-другому и быть не может, когда речь идет о создании чего-то нового и настолько сложного. Все делается методом проб и ошибок. Это эволюционный процесс, на который понадобиться немало времени и, возможно, даже сами создатели пока не совсем понимают, что у них выйдет в конечном итоге. Потому все что остается простым инвесторам – это надеяться на светлые умы девелоперов, и развиваться самим.