Как шардинг помогает преодолевать ограничения блокчейна

Общий недостаток многих блокчейн-решений — требующие большого объема вычислений протоколы консенсуса, которые обеспечивают получение согласия всех пользователей с тем, что предложенная транзакция является действительной


10:00 11.02.2019   |   11421 |  Лукас Мериан |  Computerworld Россия

Рубрика Технологии



Чтобы распределенные реестры смогли конкурировать с традиционными платежными системами, которые пока выполняют проводки в сотни раз быстрее, необходимо решить проблему масштабируемости.

Один из основных недостатков распределенных реестров — нехватка масштабируемости: с ростом числа участников одноранговой сети производительность блокчейна уменьшается. Чтобы распределенные реестры могли быть взяты на вооружение компаниями сферы финансовых технологий и начали конкурировать с традиционными платежными системами, которые пока что выполняют проводки в сотни раз быстрее, проблему масштабируемости необходимо решить.

Один из изучаемых разработчиками путей решения состоит в применении шардинга — разделения задач таким образом, чтобы каждому узлу p2p-сети не приходилось брать на себя всю нагрузку по обработке транзакций. Вместо этого отдельно взятый узел хранит и обрабатывает только ту информацию, за которую отвечает его раздел (shard). Данными раздела по-прежнему можно обмениваться с другими узлами, за счет чего сохраняется децентрализованность и защищенность реестра, поскольку каждый участник все еще имеет возможность просматривать все вхождения.

Недостаток многих общедоступных блокчейнов — требующие большого объема вычислений протоколы консенсуса, которые обеспечивают получение согласия всех пользователей с тем, что предложенная транзакция является действительной. В частности, используемый для биткоина протокол доказательства выполнения работы (proof of work, PoW) требует, чтобы большинство участников сети заверили новую транзакцию и зарегистрировали соответствующие данные, из-за чего проводки выполняются медленно. Биткоин-сеть обрабатывает только по 3,3-7 транзакций в секунду, и время выполнения одной операции достигает 10 мин, а у Ethereum скорость составляет 12-30 транзакций в секунду. Для сравнения, у сети VisaNet компании Visa аналогичный показатель в среднем — 1700.

Шардинг рассматривается разработчиками Ethereum как возможный способ улучшения масштабируемости сети — исследования начались в прошлом году, когда блокчейн начал обрабатывать больше миллиона транзакций в день.

Шардинг представляет собой разновидность концепции секционирования, изначально появившейся в мире баз данных. В Ethereum выбрали вариант шардинга, при котором сеть делится на разделы, и узлы каждого из них могут выполнять транзакции напрямую только с другими участниками своего раздела. Для связи между разделами предполагается использовать отдельный протокол. В целом такая схема обещает возможность параллельного выполнения очень большого количества транзакций.

Для обеспечения безопасности нужно предусмотреть меры против захвата разделов злоумышленниками — как отмечают исследователи, компрометация узлов в каком-либо разделе приведет к перманентной потере хранимых им данных. В Ethereum для противодействия подобным атакам решили случайным образом распределять узлы по разделам и в случайно выбранное время менять распределение, чтобы злоумышленник не мог спрогнозировать, в какой раздел в тот или иной момент попадет его узел.

Как отмечают аналитики Forrester, практически во всех блокчейнах, создатели которых задумываются о внедрении шардинга, соответствующие механизмы планируют реализовать по-разному.

Недавно стартап Devvio объявил о разработке блокчейна, избавленного от основных недостатков существующих распределенных реестров. Утверждается, что это удалось в том числе благодаря применению особой схемы шардинга, в которой каждый раздел представляет собой отдельный блокчейн.

PolyShard

Источник: Distributed Technology Research Foundation

Ученые группы университетов, объединившие усилия под эгидой некоммерческой организации Distributed Technology Research Foundation, объявили о разработке цифровой валюты Unit-e, тоже обещающей решить проблемы масштабируемости и производительности блокчейнов за счет шардинга. Исследователи предложили оригинальный метод разбиения на основе концепций теории кодирования, дав ему название PolyShard. По словам разработчиков, PolyShard — это решение для хранения данных и выполнения вычислений, эффективность которого растет вместе с числом пользователей без ухудшения безопасности.

Так или иначе, при всех своих предполагаемых преимуществах существующие на сегодня механизмы шардинга пока находятся в стадии разработки и тестирования — ни стандартов, ни рабочих реализаций еще не существует.


Теги: Платежные системы Биткоин Блокчейн Финтех
На ту же тему: