Какие проблемы есть у блокчейнов.
Layer 1 и Layer 2. Решения для масштабируемости блокчейна.
В рамках этой статьи, обсуждая Layer 1 и Layer 2, будем затрагивать пройденные моменты по теме масштабируемости, чтобы вам не возвращаться к прошлым статьям.
В технологии блокчейн термин «масштабирование» описывает увеличение пропускной способности системы, измеряемой количеством транзакций, выполняемых в секунду. В связи с постоянным повышением объемов использования криптовалют, стало необходимо создание «уровней» для повышения безопасности сети, ведения учета и многого другого.
Уровень 1 (Layer 1 ) в децентрализованной экосистеме — это сам блокчейн. Уровень 2 (Layer 2 ) — это сторонняя надстройка над уровнем 1, которая увеличивает число нодов и, следовательно, пропускную способность системы. В настоящее время внедряется множество решений второго уровня. Эти решения используют смарт-контракты для автоматизации транзакций.
Решение L1 против L2
У технологии блокчейна много преимуществ: она повышает уровень безопасности, позволяет легко проводить транзакции и ведет запись всех операций. Однако по мере того, как её использование становится все более распространенным, возникает ряд проблем.
В блокчейне каждая транзакция должна проходить несколько этапов, требующих значительных вычислительных мощностей и времени. Чтобы улучшить пропускную способность блокчейна, разработчики внедряют в его структуру решения масштабирования уровня 2. Далее рассмотрим как это работает.
Проблема масштабируемости Биткоина.
Сначала Биткоин был простым блокчейном, позволяющим пользователям отправлять и получать цифровую валюту. Однако еще с момента его создания было известно о проблеме масштабируемости, это породило вопрос: что произойдет, когда больше людей начнут использовать Биткоин?
Этот сценарий можно рассматривать как сетевую проблему. Каждая система имеет определенную пропускную способность и может обрабатывать лишь определенное количество транзакций в секунду (это количество транзакций, которые блокчейн-сеть может обрабатывать каждую секунду). Более того, каждая транзакция в децентрализованной системе проходит проверку, что требует достаточно много места для хранения данных.
В 2021 году популярность Биткоина и Эфириума привела к перегрузке их протоколов, в результате чего сильно снизилась скорость обработки.
Почему блокчейн нуждается в технологии L2?
Ответ прост: возросший спрос и более высокие затраты на транзакции. Давайте разберём это на примере Ethereum.
У ETH есть механизм консенсуса, что позволяет применять несколько децентрализованных приложений. Механизм консенсуса в блокчейне — это отказоустойчивая система, которая поддерживает одно и то же состояние сети в распределенных нодах. С помощью этих протоколов все ноды согласовывают транзакции и синхронизируются друг с другом. Это делает блокчейн Ethereum крайне защищённым от перезаписи данных и хакерских атак.
Стабильность и безопасность Ethereum вызвала ICO-ажиотаж, что привело к созданию большого количества новых Токенов на блокчейне. Следовательно, приток пользователей возрос так же, как и количество транзакций, совершаемых на Ethereum. С увеличением количества пользователей увеличивалась и плата за транзакцию.
Когда блокчейн-сеть перегружена, активные транзакции отправляются в пул памяти и требуют больше времени для обработки. Для решения этой проблемы валидаторы начинают отдавать приоритет транзакциям с более высокими ценами на газ. Это ещё больше повышает минимальную стоимость, необходимую для совершения транзакции.
В итоге это приводит к тому, что цены на газ взлетают до небес, ухудшая ситуацию для всех участников. Масштабирование L2 призвано решить эту проблему и снизить затраты на транзакции.
Проблема с первым уровнем.
Сеть уровня 1 (L1) – это блокчейн в децентрализованной системе. Два примера таких сетей – это Биткоин и Эфириум.
При масштабировании 1 уровня базовый протокол блокчейна изменяется для внедрения возможности его масштабирования. С помощью этих решений изменяются правила протокола, что увеличивает пропускную способность и скорость проведения транзакций.
Масштабирование уровня 1 может включать:
•Повышение скорости подтверждения блоком
•Увеличение ёмкости блока памяти
Вместе эти решения масштабирования увеличивают пропускную способность сети. Однако уровень 1, похоже, не справляется с ростом числа пользователей блокчейна.
Неэффективный протокол консенсуса.
Блокчейн первого уровня, такой как биткоин, как мы знаем, по прежнему использует старый и «Деревянный» механизм консенсуса доказательство выполнения работы.
И хоть этот механизм безопаснее остальных, его скорость крайне мала. Этот протокол нуждается в вычислительных мощностях майнеров для решения криптографических алгоритмов. Таким образом, требуется больше вычислительной мощности и времени в целом.
Решением для Ethereum является переход на POS. Переход произошёл в 2022 году, но пока еще нельзя сказать, что данный переход решил вопросы с масштабируемость
Решением масштабирования для этой проблемы является шардинг. Проще говоря, шардинг (сегментирование) разбивает работу по проверке и аутентификации транзакций на небольшие и простые подзадачи. Таким образом, рабочая нагрузка может быть распределена по сети, что позволяет использовать вычислительные мощности большего количества нодов.
Механизм работы шардинга позволяет проводить последовательную обработку нескольких транзакций.
Объяснение на примере Ethereum: Блокчейн Ethereum состоит из тысяч компьютеров или нод, каждая из которых «одалживает» сети определенный объем хешрейта. Именно этот хешрейт позволяет Ethereum Virtual Machine (EVM) функционировать — выполнять смарт-контракты и управлять децентрализованными приложениями (DApps).
В настоящее время Ethereum работает на основе последовательного выполнения, в котором каждая из нод должна рассчитывать КАЖДУЮ операцию и обрабатывать КАЖДУЮ транзакцию. Поэтому прохождение транзакцией верификационного процесса требует значительного времени: Ethereum осуществляет приблизительно 10 транзакций в секунду, тогда как у Visa, например, этот показатель в районе 24.000.
Добавление к сети компьютеров не обязательно повышает эффективность, поскольку весь реестр хранится на каждом устройстве, и цепь верификации просто становится длиннее.
Идея шардинга состоит в том, чтобы отказаться от модели, в которой каждая нода должна вычислять каждую операцию, в пользу модели параллельного выполнения, в которой ноды обрабатывают только определенные вычисления. Это позволяет параллельно обрабатывать множество транзакций.
Блокчейн разделяется на отдельные шарды (поддомены или сегменты). Ноды управляют только той частью реестра, к которой они прикреплены (выполняют процессы и подтверждают транзакции), а не поддерживают весь реестр.
Какие проблемы решает шардинг?
Шардинг — потенциальное решение проблемы масштабирования.
Чем популярнее становится блокчейн, тем больше пользователей инициируют транзакции, запуск децентрализованных приложений и другие процессы в сети. В результате скорость транзакций падает, что препятствует расширению блокчейна в долгосрочной перспективе. Рост транзакционной активности требует от нод интенсифицировать процесс верификации транзакций.
Существует угроза того, что эти блокчейны могут «закупориться», как это произошло с Ethereum в период бума CryptoKitties, когда на долю игры приходилось 11% транзакций сети.
Если группы нод отвечают за индивидуальные сегменты, то каждой ноде не нужно поддерживать весь реестр для выполнения каждой операции. Поэтому валидация транзакций может осуществляться параллельным, а не линейным образом, что повышает скорость сети.
Каковы недостатки шардинга?
Основные проблемы шардинга — коммуникация и безопасность. Если разделить блокчейн на изолированные сегменты, то каждый шард станет отдельной сетью. Пользователи и приложения одного поддомена не смогут коммуницировать с пользователями и приложениями другого поддомена, не применяя особый механизм коммуникации.
В сегментированном блокчейне также возникает проблема безопасности, поскольку хакерам легче захватить один шард — по причине меньшего хешрейта, требуемого для контроля индивидуальных сегментов (так называемая атака 1%).
После захвата сегмента атакующие могут направить недействительные транзакции в основную сеть. Также данные в этом конкретном сегменте могут стать недействительными и оказаться безвозвратно утрачены.
Ethereum предлагает решение в виде рандомизированной выборки — протоколы шарда случайным образом назначаются в различные секции для подтверждения аутентификации блоков.
ТОП блокчейны , которые называют себя шардированными блокчейнами на POS - Near Protocol и Zilliqa. Два достаточно перспективных блокчейна.
Решение для масштабирования второго.
•Блокчейн уровня 2 повышает эффективность нативного уровня. L2 берет на себя часть транзакционной нагрузки первого уровня блокчейна и передает ее другой системной архитектуре, эффективно разгружая систему при наплыве транзакций.
•Затем блокчейн уровня 2 берёт на себя нагрузку и отчитывается перед уровнем 1. Поскольку большая часть нагрузки по обработке данных приходится на эту смежную вспомогательную архитектуру, загруженность остальной сети снижается, в связи с чем блокчейн уровня 1 становится не только менее перегруженным, но и более масштабируемым.
Сайдчены (Sidechains).
Cайдчейны также являются решением для масштабирования технологии блокчейна уровня 2 (Layer 2). Сайдчейн – это транзакционная цепочка, содействующая проведению большого количества транзакций.
У него есть механизм консенсуса, не зависящий от нативного уровня. Этот механизм можно оптимизировать для повышения масштабируемости и скорости обработки. При использовании сайдчейна, основной блокчейн должен подтверждать записи транзакций, обеспечивать безопасность и разрешать споры.
Сайдчены публично записывают все транзакции в бухгалтерской книге. Кроме того, если в сайдчейне происходит нарушение безопасности, то оно не влияет на другие сайдчейны или на основной блокчейн базового уровня.
Один из самых популярных Сайдчейнов - Блокчейн POLYGON.
Роллапы (Rollups).
Роллапы — это решения для масштабирования блокчейна уровня 2, которые выполняют транзакции за пределами блокчейна уровня 1 и размещают на нём данные о выполненных транзакциях. Данные находятся на базовом уровне, что позволяет уровню 1 обеспечивать безопасность роллапов.
Роллапы бывают построены на двух моделях безопасности:
•Оптимистичные роллапы: в таких роллапах транзакции действительны по умолчанию. В связи с чем они проводят действия по выявлению мошенничества только если возникает проблема.
•Роллапы с нулевым разглашением: такие роллапы выполняют вычисления вне блокчейна. После выполнения операции они отправляют доказательство достоверности на базовый уровень или основной блокчейн.
•Роллапы помогают увеличить пропускную способность блокчейна и снизить плату за газ для пользователей.
Ограничивающие факторы уровня 1 и уровня 2.
У выделения уровней блокчейна есть несколько преимуществ.
Основное преимущество решений уровня 1 заключается в том, что разработчикам не нужно ничего добавлять к существующей архитектуре, поскольку изменяется только базовый уровень.
Решения для масштабирования уровня 2, в свою очередь, не затрагивают протокол базового уровня. Кроме того, эти решения позволяют выполнять несколько микро транзакций, а пользователям не нужно платить заоблачную комиссию за транзакции или тратить время на верификацию от майнера.
Однако оба этих уровня блокчейна имеют ограничения, которые необходимо учитывать.
Добавление к уже существующим протоколам.
Основная проблема со слоями блокчейна заключается в добавлении их в существующие протоколы. И Биткоин, и Эфириум имеют рыночную капитализацию в миллиарды долларов, пользователи этих сервис ежедневно торгуют миллионами долларов. Поэтому нет смысла усложнять процесс излишним кодом и экспериментами, так как на это потребуется много денег.
Подводя итоги.
Что касается вышеупомянутого сдерживающего фактора, то для его решения есть два варианта:
1) Смягчить проблему масштабирования.
2)Найти рабочую альтернативу. Разработчики блокчейна выбирают первый вариант, переходя к масштабированию второго уровня в Ethereum 2.0.
На момент публикации блокчейн-системы все еще находятся в стадии разработки. Главный вопрос заключается в том, станут ли уровни блокчейна и масштабирование второго уровня временными или постоянными решениями? На данный момент никто точно не знает.