AVA & Avalanche — новое семейство консенсусов

stsoen
AVA Russia
Published in
4 min readJan 21, 2020

Если вы хотя бы в общих чертах представляете, как работают блокчейны и другие распределенные реестры, то скорее всего уже сталкивались с таким понятием, как «консенсус». Это алгоритм, определяющий низкоуровневую логику работы распределенной сети и взаимодействие ее участников между собой. В контексте нижеследующего материала стоит сделать одно очень важное отступление: различие между словами «протокол» и «консенсус».

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

Сам по себе AVA представляет собой модульную платформу для создания публичных и приватных DLT (Distributed Ledger Technology) — распределенных систем (подсетей), которые могут взаимодействовать друг с другом или быть полностью изолированными в виде:

  • блокчейн-сетей для выполнения смарт-контрактов, хранения информации в блоках и работы Dapps и повышения безопасности в публичных конфигурациях за счет большей децентрализации;
  • DAG’ов, как более легковесных и быстрых решений для платежных систем и IoT с минимальными комиссиями;

Помимо этого, реализуется возможность запуска виртуальных машин — уже есть имплементация EVM, чуть позже будут добавлены WASM и Move. Модульность позволяет как создавать распределенные реестры и виртуальные машины с нуля благодаря широким возможностям кастомизации и прописывания своих правил с соглашениями, так и импортировать готовые решения на платформу. А сама платформа обеспечивает возможность работы различных DLT со своими, более быстрыми и масштабируемыми механизмами консенсуса, которые являются ее основой. Более подробно о настройках и их категориях поговорим в одной из следующих статей.

Avalanche

Avalanche появился на свет 16 мая 2018 года, когда анонимы, известные под псевдонимом «Team Rocket», опубликовали вайтпепер под названием “Snowflake to Avalanche : A Novel Metastable Consensus Protocol Family for Cryptocurrencies” в IPFS (распределенное файловое хранилище). В вайтпепере содержалось описание семейства из четырех консенсусов, в которое входит Avalanche, и исследование о жизнеспособности различных протоколов и консенсусов. Чуть позже команда исследователей из Корнельского университета начала работу над улучшением этого исследования и его реализацией, для чего был запущен проект AVA Labs.

Avalanche сочетает в себе лучшее как из классического консенсуса, так и из консенсуса Nakamoto, используемом в сети Bitcoin. Классические консенсусные протоколы Paxos, созданные еще в 1990х Лесли Лампортом и Барбарой Лисков, среди преимуществ имеют быструю финализацию; широкополосность, дающую высокую скорость транзакций; отсутствие потребности в энергоемком механизме как у PoW и защиту от Sybil-атак 51%. Но при этом масштабируемость почти отсутствует, затраты между узлами растут в прогрессии, все ноды должны быть известны и сами по себе системы достаточно закрытые, требуя прав доступа для участия в сети.

Nakamoto лишен проблемы византийских генералов ( BFT), инклюзивен (permissionless, не требующий разрешений) — открыт, анонимные узлы могут спокойно присоединяться к сети и выходить из нее, что ведет к масштабированию по количеству узлов. Недостатки вытекают из преимуществ — 8 пулов держат под 90% мощностей хешрейта, риски форков, также — высокое энергопотребление и время подтверждения блоков.

Новое семейство консенсусов — Avalanche

В отличие от Nakamoto и классического консенсусов Avalanche имеет ключевую особенность — он направляет ноды к формирующемуся консенсусу, фактически — к единогласному голосованию через голосование в подмножествах сети. В существующих решениях, как уже говорилось выше — всегда есть недостатки, связанные с так называемой «триллемой блокчейна» — сети, в которых каждый узел проверяет каждую транзакцию, не могут одновременно обладать свойствами децентрализации, масштабируемости и безопасности. Всегда страдает одно из них в ущерб другим.

Триллема блокчейна

Как правило, в конечном итоге проще создать централизованную сеть, обладающую свойствами безопасности и масштабируемости на большое количество пользователей. По такому пути пошли NEO, Tron и EOS, например.

И чтобы разорвать этот треугольник, избавившись от централизации, Avalanche использует новый метод работы — метастабильность, основанную на ghossip protocol. Работает он по следующему принципу: если представить, что вы в толпе людей, и спросите у ближайших 5 человек, какой цвет они выбирают — красный или зеленый, можете получить в ответе 3 красных и 2 синих. Поскольку основной цвет — красный, то он и будет выбран. В то же время другие люди в толпе будут делать то же самое, индивидуально выбирая 5 других. Так проходит первый раунд, в котором разница в голосах между двумя цветами может быть маленькой. Затем начинается второй раунд, в котором участники перемешиваются между собой, и разница в голосах увеличивается. В третьем раунде вероятность того, что большинство уже склонится к какому-либо из двух цветов — гораздо выше, чем 50/50. Так происходит формирование тренда, раунд за раундом.

Ghossip protocol

В итоге получается, что Avalanche — это новое семейство консенсусов, в котором вероятность провала голосов стремится к нулю. Узлы выбираются в рандомном порядке, что способствует безопасности и делает возможным распраллеливание консенсуса, пока все узлы в сети не определятся с выбором и не достигнут глобального консенсуса — это плюс к скорости и децентрализации.

В следующей статье мы поговорим про практическую реализацию консенсуса Avalanche на протоколе Ethereum, называемую Athereum, и о том, как все выглядит на практике. Позже, когда будет опубликована документация проекта по всем консенсусам этого семейства, являющимися модификациями оригинальных из вайтпепера Team Rocket — будет серия статей с разбором каждого из них.

Чтобы следить за обновлениями и новыми материалами, лучше помогающими понять AVA — присоединяйтесь к русскоязычному сообществу AVA в Telegram и подписывайтесь на блог проекта:

--

--