что такое валидаторы в блокчейне

Валидаторы блокчейн-платформы Ethereum 2.0. Перспективы и риски проекта

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

Кто такие валидаторы

Валидаторы или стекинг-провайдеры – это узлы, которые берут на себя все основные задачи для поддержания работоспособности блокчейн-сети: безопасность, распределение вознаграждений стейкера-делегатам, предоставление статистики нод и пр.

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

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

Отслеживать валидатора Everstake можно по этому адресу.

Зачем нужно стейкать

Стейкеры делают платформу более децентрализованной, поддерживают стабильность и безопасность блокчейн-сети. Чем больше майнеров, тем лучше работает сеть, и она более безопасна. Взамен стейкеры получают вознаграждение.

Валидаторы сети не только голосуют за то, какой блок добавить в блокчейн. Они ссылаются на конкретный блок из истории блокчейна и также голосуют за него. Таким образом связываются начальные и конечные точки блоков. Блок проходит голосование, если более ⅔ участников проголосовали за него.

Что будет с майнерами после запуска сети

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

Другой риск связан с возможностью падения курса криптовалюты. После того, как валидаторы застейкают монеты, они замораживаются, и вывести их возможно будет не ранее, чем через 18 часов. Напомним, что минимальная сумма монет для стейкинга в Ethereum 2.0 составляет 32 ETH. При падении цены есть вероятность, что вознаграждения не покроют убытки стейкеров.

Перспективы проекта

Сейчас Ethereum находится на второй позиции по капитализации в списке популярного статистического ресурса CoinMarketCap. Масштабирование сети может привлечь больше участников, а область ее применения значительно расшириться. Рядовые стейкеры могут делегировать свои монеты валидаторам, и им не потребуются большие затраты на майнинговые фермы, чтобы участвовать в работе сети Ethereum 2.0.

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

Источник

Elrond: как работает платформа и что нужно знать новичкам

что такое валидаторы в блокчейне. . что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-. картинка что такое валидаторы в блокчейне. картинка . В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

Криптовалюты строят новую цифровую экономику, в центре которой находится технология блокчейн. Децентрализация делает финансовые услуги доступными, быстрыми и конфиденциальными. Первые платформы «посеяли зерно» для роста децентрализованной экосистемы, но далеки от совершенства. Более новые криптопроекты сконцентрировались на решении главных проблем устаревших блокчейнов: низкая пропускная способность и, как следствие, скорость транзакций, высокие комиссии и плохая масштабируемость сетей.

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

что такое валидаторы в блокчейне. 1*P4q4dh7bliMpOk1KHdlXDw. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-1*P4q4dh7bliMpOk1KHdlXDw. картинка что такое валидаторы в блокчейне. картинка 1*P4q4dh7bliMpOk1KHdlXDw. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

Одной из платформ, решающих эти и другие проблемы, стал Elrond (EGLD). О нем и пойдет речь сегодня в статье. Читайте продолжение, чтобы узнать, что такое Elrond, как устроена платформа и для чего используются токены EGLD.

Что такое Elrond

Elrond — это блокчейн-платформа для создания высокопроизводительных и безопасных приложений (DApps), основанных на смарт-контрактах. Платформа создает глобальную цифровую экономику, обеспечивая интероперабельность блокчейнов. Сеть Elrond способна обрабатывать до 15 000 транзакций в секунду, что делает ее одной из самых производительных блокчейнов. Транзакции в Elrond подтверждаются почти мгновенно. Для сравнения, Ethereum может обрабатывать до 15 tps, а Tron — до 1000.

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

В основе Elrond лежит механизм консенсуса Secure Proof-of-Stake или SPoS. Работоспособность сети поддерживают валидаторы, которых сейчас более 2169. Более подробно о том, кто такие валидаторы и как их выбирают в Elrond, поговорим в следующем разделе. Любые пользователи могу стать валидаторами сети или делегировать токены EGLD, выпущенные на блокчейне Elrond, получая за это вознаграждение.

Что такое Proof-of-Stake

Proof-of-Stake или PoS — это механизм консенсуса, основанный на том, сколько токенов у владельца узла (ноды). Алгоритм придуман в 2011 году и пришел на замену неэффективному алгоритму Proof-of-Work (PoW), который требует больших вычислительных ресурсов для согласования добавляемых блоков.

Хотя цель согласования для обоих алгоритмов консенсуса одинакова, методы их достижения отличаются. У PoS несколько ключевых отличий от PoW:

Кто такие валидаторы

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

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

В Elrond сеть разделена на сегменты, количество которых зависит от числа валидаторов. Блокчейн устроен таким образом, чтобы обеспечить необходимое количество сегментов в зависимости от потребности в транзакциях. Поэтому сеть рассчитана на резкий рост транзакций: в этом случае подключат новых валидаторов, и блокчейн не будет перегружен. Вспомните, как в определенный период у платформы Ethereum из-за стремительного роста комиссии взлетели до нескольких десятков долларов, а сами транзакции зависали на несколько часов или вовсе отменялись.

Чтобы предотвратить это, Elrond использует метод TargetShardLoad, который стремится поддерживать загрузку шардов не выше 50% с учетом возможного всплеска активности. Но при этом исключается низкая загруженность, иначе поддерживать сеть станет нерентабельно. Elrond также предложил улучшенный подход к согласованию узлов SPoS.

Secure Proof of Stake

Платформа Elrond использует модифицированный алгоритм консенсуса Secure Proof-of-Stake ( SPoS). Узлы Elrond формируют рейтинг консенсусной группы, на основе которого определяются шансы стать валидатором следующего блока. Валидаторы «тасуются» случайно и могут быть перераспределены в другой сегмент. За счет этого поддерживается высокий уровень безопасности сети.

В отличие от классического PoS, улучшенный механизм выбирает операторов узлов действительно случайно и непредвзято. Новый источник определяется путем подписания предыдущего случайного источника, сгенерированного валидатором. За успешное добавление блоков валидаторы получают токены Elrond (EGLD).

Где купить EGLD

Вы можете купить EGLD непосредственно с помощью кредитной карточки, банковского перевода, Revolut или ApplePay через один из многочисленных платежных систем, с которыми компания Elrond сотрудничает. На этой странице http://buy.elrond.com вы найдете самую эффективную платформу для совершения платежей, представленную в Вашем регионе.

Получить EGLD можно на криптобиржах или обменниках. Вот список бирж, где торгуются токены:

Полный список криптобирж можно найти на странице монеты на CoinMarketCap.

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

Где хранить Elrond (EGLD)

Токены EGLD хранятся в криптовалютных кошельках. Если у вас его нет, то нужно сначала создать такой кошелек. Вот несколько криптокошельков, в которых можно хранить токены EGLD:

Как застейкать Elrond (EGLD)

Стейкать напрямую в сети Elrond могут только валидаторы. Для этого нужно запустить собственный узел и заблокировать большую сумму токенов, если точнее 2500 eGLD. В противном случае у вашего узла не будет шансов, чтобы его назначили валидатором.

Но обычные пользователи могут делегировать токены валидаторам, получая доход даже с небольших сумм. Такой стейкинг поддерживают практически все кошельки, в которых можно хранить токены EGLD. Делегаторы платят комиссию валидаторам, поэтому получают чуть меньше. Комиссию назначают сами валидаторы.

Минимальная сумма для делегирования — 10 EGLD. Кроме сумм отличается и доходность: валидаторы получают до 36% годовых в то время, как делегаторы — только 29%. Но величина дохода зависит и от других факторов. В Elrond делегирование бывает двух видов: Active и Waiting List Delegation.

В чем разница между Active и Waiting List Delegation

Активное делегирование — это классический способ стейкинга, когда вы просто передаете токены валидатору и регулярно собираете награду. В этом случае вы получаете до 36% годовых. Но при таком подходе пользователи получают награду только в том случае, если их валидатор получил вознаграждение.

Сейчас пользователи не могут делегировать активно, поскольку сеть Elrond заполнена узлами делегаторов. Поэтому разработчики добавили очередь ожидания.

При делегировании типа Waiting List награду получают все участники, занявшие очередь пропорционально сумме делегированных токенов вне зависимости от каких-либо факторов. Делегаторы из списка ожидания получают до 20% годовых, но зато не зависят от успеха своих валидаторов.

С 1 декабря еженедельно по понедельникам распределяются 5000 EGLD между всеми участниками. Если вы делегировали монеты, то нужно держать токены в течение всего цикла. Например, если вы снимите токены в воскресенье, то полностью лишитесь награды, несмотря на то, что остальные шесть дней вы находились в очереди. Снимать монеты нужно только после распределения, чтобы получить награду.

Делегаторам нужно знать еще кое-что: вывести свои монеты сразу не получится. После того, как пользователь отстейкает монеты или выйдет из очереди ожидания, ему придется подождать 10 дней, прежде чем токены EGLD вернутся в кошелек. Что касается Waiting list, анстейк происходит моментально.

У Elrond скоро будет релиз Фазы 3, в рамках которой поменяется система делегирования токенов. Во-первых, число общего количества узлов увеличится, а каждый валидатор сможет стейкать более 2500 EGLD. Во-вторых, изменится сам процесс делегирования, а доходность уменьшится с 29% до

20% годовых. В Фазе 3 на платформе добавят открытое делегирование, которое будет реализовано на уровне протокола при помощи системных смарт-контрактов.

Стейкинг-провайдеры (валидаторы) будут определять, какие максимальные суммы смогут делегировать их пользователей и какой будет плата за обслуживание, что позволит адаптировать условия для стейкинга под них, а стейкать можно будет посредством регулярных смарт-контрактов, то есть несистемных.

Источник

Кто такие валидаторы?

Функционирование блокчейна невозможно без валидаторов.

Кто такие валидаторы?

У них есть несколько определений. Одно из – это кластер узлов сети, прошедший отбор в валидаторы на определенный временной промежуток. Есть и такое определение – операторы узлов.

Основная задача, которою выполняют валидаторы – проверка блоков, что добавляются в сеть на так называемую валидность. За счет этого обеспечивается функционирование блокчейна. За такую работу им выплачивают награды. Как правило, они должны заранее обеспечить для себя определенное число токенов, чтобы потом принять участие в голосовании за блоки, что добавляются.

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

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

В разных блокчейнах есть свои валидаторы. Рассмотрим их в сети TON, чтобы понять, как они работают. Валидаторов сети Ethereum 2,0 не станем рассматривать, поскольку их сеть постоянно меняется, в ней много недоработок и программных ошибок.

Сеть Free TON

В этой сети валидаторы представляют также узлы сети (ноды). Каждый из валидаторов принимает участие в валидации новых блоков блокчейна. Если сказать про саму валидацию, то она представляет собой подписание блоков рядом узлов, чтобы состоялся консенсус о правильности блоков. Консенсус крайне важен, иначе сбои в работе узлов неизбежны, как и проведение атак на сеть со стороны киберпреступников.

Как было указано ранее, за то, что ноды работают, они получают определенное вознаграждение. В сети TON им выплачивают 1 TON за каждый из новых блоков.

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

Прибыль

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

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

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

Как выбирают

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

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

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

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

Заключение

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

Подписывайтесь на Фридман клаб в соцсетях и наш Телеграм канал, чтобы всегда быть в курсе самых последних и горячих новостей @like_freedman

Источник

Валидатор в криптовалюте

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

Содержание

Валидаторы – это узлы в системе блокчейна, которые берут на себя задачи по поддержанию работоспособности сети. Они распределяют вознаграждения за участие в стейкинге, предоставляют статистику сети, контролируют целостность блоков и т.д. Именно валидаторы – основные действующие лица в любой конкретной сети блокчейна. Но для поддержания работоспособности и выполнения поставленных задач требуются монеты, которые предоставляет сообщество.что такое валидаторы в блокчейне. validator 01. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-validator 01. картинка что такое валидаторы в блокчейне. картинка validator 01. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

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

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

что такое валидаторы в блокчейне. validator 02. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-validator 02. картинка что такое валидаторы в блокчейне. картинка validator 02. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.Система пулов позволяет любому пользователю участвовать в таком типе добычи, даже если его количества активов недостаточно для запуска собственного валидатора. При этом не требуется брать на себя обязанности по работе, ведь оператор пула осуществляет все действия самостоятельно.

Валидатор – это комплекс программного обеспечения. Человек или команда лишь запускают его, настраивают и контролируют. Сам комплекс ПО может существовать уже без участия “создателя”. Неграмотно настроенный нод уязвим к DDOS-атакам и иным вторжениям со стороны хакеров. Поэтому при выборе валидатора необходимо обращать внимание на его создателя, т.к. при подключении к слабозащищенному узлу вкладчик может потерять все свои активы.

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

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

Как стать валидатором

Процедура может отличаться в зависимости от сети, в которой будет работать система. Для открытия пула рекомендуется изначально ознакомиться с инструкцией, которую можно найти на сайте разработчика платформы, например, Ethereum ( launchpad.ethereum.org ). В ней содержится не только последовательность действий, но и критерии, без соответствия которым нельзя стать валидатором. В случае с ETH 2.0 потребуется иметь компьютер минимум с процессором Intel Core i5-760 или эквивалентом от AMD, 4 ГБ ОЗУ, SSD, скорость интернета от 10 Mbps и бесперебойный источник питания, предотвращающий прерывание соединения с сервером сети. Чем выше характеристики машины, тем выше производительность и скорость работы валидатора в сети.

Общие шаги становления валидатором в любой сети.

Также каждый разработчик пула может обратиться к сервисам, которые предоставляют услугу Validador-as-a-service (валидатор как услуга). Тогда компания-подрядчик самостоятельно выполнит всю работу по настройке и управлению узлом. Этим способом пользуются владельцы крупных активов и инвесторы. Для частных лиц с небольшими средствами такой вариант не подходит, т.к. затраты будут непропорциональны полученному доходу.

Как они находят ошибки сети

Для поиска ошибок используется вся возможная информация с сервиса, включая визуализацию множества метрик с серверов. Благодаря сопоставлению получаемой информации, команды могут понять, что именно происходит в данный момент. Быстрый поиск и исправление ошибок – это выгодно для всех участников проекта.

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

Как защищается блокчейн от атак

Каждая сеть имеет свой механизм защиты, в котором обязательно участвуют валидаторы. Именно от них разработчики сети получают необходимую информацию о состоянии отдельных блоков и различные метрики, позволяющие сформировать полную картину и найти проблему или противодействовать атаке.

В поддержании сети принимают участие сразу несколько валидаторов, которые соперничают друг с другом. Но гонка за прибылью продолжается до того момента, пока не появляется какая-то проблема. Тогда разные проекты начинают сотрудничать друг с другом.

Какая выгода брать на себя эти функции и сколько на этом можно заработать

Каждый из валидаторов имеет доход, который формируется в зависимости от того, когда был окончен цикл валидации. Прибыль состоит из эмиссии новых токенов и оплаты за подтвержденные блоки. Смарт-контракты построены таким образом, что они не дают возможности валидаторам претендовать на награду пользователей, который сформировали пул. Это позволяет избавить систему от недобросовестных участников.

Награда валидатору выплачивается пропорционально стейку. Если он предоставил стейк в 5% от общего размера пула, то он получит 5% от общего размера вознаграждения. Лучше всего валидаторство подходит для предпринимателей и компаний, которые имеют достаточно ресурсов и находчивости для создания новых изощренных алгоритмов награждения и наказания пользователей. Новаторские идеи всегда могут привлечь куда большее количество заинтересованных лиц, нежели стандартное поведение.

Валидаторы в Ethereum 2.0

Валидаторы в сети Ethereum 2.0 должны соответствовать хотя бы минимальным требованиям к железу. В противном случае система не будет выдавать необходимую мощность для поддержания сети в рабочем состоянии и ее защиты. Также потребуется иметь хотя бы 32 ETH, чтобы запустить узел.

На данный момент в сети Ethereum 2.0 насчитывается более 181 тыс. валидаторов. Сама сеть уже прошла аудит, который подтвердил полную безопасность.

Источник

Шардинг в Блокчейне

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

Хорошо известно, что Ethereum, самая популярная dApps платформа, обрабатывает меньше чем 20 транзакций в секунду. Из-за этого ограничения цена транзакций и время на их подтверждение очень высоки: несмотря на то, что блок в Ethereum публикуется раз в 10-12 секунд, согласно ETH Gas Station время между отправкой транзакции и тем как она действительно попадает в блок в среднем 1.2 минуты. Низкая пропускная способность, высокие цены и долгое подтверждение транзакций не позволяет запускать на Ethereum какие-либо высокопроизводительные сервисы.

Основная причина того, что Ethereum не может обрабатывать больше 20 транзакций в секунду заключается в том, что каждая нода в Ethereum должна проверить каждую транзакцию. За пять лет с выхода Ethereum было предложено много идей как решить эту проблему. Эти решения можно грубо разбить на две группы: те, которые предлагают делегировать выполнение транзакций небольшой группе нод с очень хорошим железом, и те, которые предлагают каждой ноде обрабатывать только подмножество всех транзакций. Пример первого подхода — это Thunder, в котором блоки создаются только одной нодой, что позволяет, по утверждениям разработчиков, получать 1200 транзакций в секунду, что в 100 раз больше чем у Ethereum. Другие примеры из первой категории — это Algorand, SpaceMesh, Solana. Все эти протоколы улучшают разные аспекты протокола и позволяют выполнять больше транзакций чем в Ethereum, но все ограничены скоростью одной (пусть и очень мощной) машины.

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

В этом посте я расскажу как работает Шардинг в Blockchain на примере нескольких протоколов, которые сейчас находятся в разработке.

Так как терминология не стандартизована, я буду использовать следующие русские термины в статье:

Блокчейн — это либо технология в общем, либо структура данных, содержащая все блоки, включая форки.

Цепь — это одна конкретная цепь в блокчейне, то есть все блоки, достижимые начиная с какого-то блока по ссылкам на предыдущий блок.

Каноническая цепь — это одна цепь в блокчейне, которую участник, наблюдающий блокчейн, считает текущей цепью. Например в Proof of Work блокчейне это будет цепь с самой большой сложностью.

Сеть — это множество участников, строящих и использующих блокчейн.

Нода — это сервер, поддерживающий или использующий сеть.

Самый простой Шардинг

В самой простой реализации вместо того, чтобы поддерживать один блокчейн, мы будем поддерживать несколько, и назовем каждый такой блокчейн “шард”. Каждый шард поддерживается независимым множеством нод, которые проверяют транзакции и создают блоки. Здесь и далее я буду называть такие ноды валидаторами.

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

Назначение валидаторов и центральный блокчейн

Первая проблема с тем, что у каждого шарда свои валидаторы, заключается в том, что если у нас есть 10 шадров, то каждый шард теперь в 10 раз менее надежен, чем был бы один блокчейн. Так, если блокчейн с X валидаторами решит сделать хард-форк в шардированную систему с 10 шардами, и разобьет X валидаторов между 10 шардами, в каждом шарде теперь только X/10 валидаторов, и получение контроля над шардом требует получения контроля над 5.1% (51% / 10) валидаторов.

Что приводит к первому интересному вопросу: а кто назначает валидаторов на шарды? Наличие контроля над 5.1% валидаторов является проблемой только если все 5.1% валидаторов в одном шарде. Если валидаторы не могут сами выбрать какому шарду они назначены, получение контроля над 5.1% валидаторов до того как они назначены на шарды не позволит получить контроль ни над одним шардом.

что такое валидаторы в блокчейне. image loader. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-image loader. картинка что такое валидаторы в блокчейне. картинка image loader. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

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

И получение случайных чисел, и назначение валидаторов — это вычисления в масштабах всей системы, не специфичные ни какому конкретному шарду. Для таких вычислений в современных дизайнах шардированных блокчейнов существует дополнительный выделенный блокчейн, который существует исключительно чтобы выполнять вычисления в масштабах системы. Помимо случайных чисел и назначения валидаторов такими вычислениями могут быть получения хешей последних блоков с шардов и их сохранение; обработка залогов в Proof-of-Stake системах, и изучение доказательств неправильного поведения с сопутствующим отбиранием таких залогов; перебалансировка шардов, если такая функция предусмотрена. Такой блокчейн называется Beacon chain в Ethereum 2.0 и Near Protocol, Relay chain в PolkaDot, и Cosmos Hub в Cosmos.

В этом посте мы будем называть такой блокчейн “центральным блокчейном”. Существования центрального блокчейна приводит нас к следующей интересной теме — квадратичному шардированию.

Квадратичное шардирование

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

Давайте посмотрим как изменится пропускная способность всей системы, если мощность нод, его поддерживающих, вырастет в k раз. Каждый шард сможет обрабатывать в k раз больше транзакций, а центральный блокчейн сможет поддерживать в k раз больше шард. Таким образом пропускная способность всей системы вырастет в k^2 раз. Отсюда название “квадратичное шардирование” (quadratic sharding).

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

Шардирование состояния

Состояние — это вся информация обо всех аккаунтах и контрактах. До сих пор мы говорили о шардинге в общем, не уточняя что конкретно шардируется. Ноды в блокчейне выполняют следующие три задачи: 1) выполняют транзакции 2) пересылают транзакции и блоки другим нодам и 3) хранят состояние и историю блокчейна. Каждая из этих трех задач сопряжена с некоторой постоянно растущей нагрузкой на ноды:

Из списка выше может показаться, что дисковое пространство — это самая большая проблема, так как только дисковое пространство растет даже если количество транзакций не растет, но на практике это не так. Сегодня состояние Ethereum занимает около 100GB, что легко можно сохранить на любой современной машине, но количество транзакций, которые Ethereum может обрабатывать ограничено несколькими десятками в секунду, упираясь в вычислительную мощность и сеть.

Zilliqa — это самый известный проект, который шардирует вычисления и сеть но не состояние. Шардирование вычислений проще чем шардирование состояния, потому что все ноды имеют все состояние, и по прежнему могут легко выполнять контракты, которые вызывают другие контракты, или затрагиваю аккаунты на разных шардах. В этих аспектах дизайн Zilliqa’и слишком упрощен, критику дизайна на английском можно прочитать здесь.

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

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

Между-шардовые транзакции

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

Для простоты будем рассматривать только транзакции, которые переводят деньги, и будем полагать что у каждого участника есть аккаунт на ровно одном шарде. Если участник на некотором шарде хочет перевести деньги участнику на том же самом шарде, валидаторы этого шарда могут обработать эту транзакцию, и применить ее к состоянию. Но если, например, у Алисы аккаунт на шарде #1 и она хочет отправить деньги Бобу с аккаунтом на шарде #2, ни валидаторы шарда #1 (которые не смогут добавить деньги Бобу) ни валидаторы шарда #2 (которые не смогут забрать деньги Алисы) не могут выполнить транзакцию целиком и обновить состояние.

Есть две больших группы подходов к решению этой проблемы:

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

Асинхронный: между-шардовая транзакция выполняется в шардах, которые она затрагивает, асинхронно: часть транзакции, которая добавляет деньги Бобу выполняется в шарде #2 когда валидаторы в шарде имеют какое-то доказательство того что часть транзакции, вычитающая деньги у Алисы, была выполнена в шарде #1. Этот подход более популярен в разрабатываемых сегодня системах из-за того что он не требует дополнительной синхронизации между шардами для производства блоков. Такие системы сегодня предложены в Cosmos, Ethereum Serenity, Near Protocol, Kadena, и других. Проблема с таким подходом в том, что если блоки производятся независимо, есть вероятность, что один из блоков, содержащих обновление состояния для транзакции, окажется не в канонической цепи в своем шарде, и таким образом транзакция окажется только частично выполненной. Например рассмотрим рисунок ниже. На нем изображены два шарда, в которых произошли форки, и между-шардовая транзакция, обновление состояния для которой отражено в блоках A и X’ соответственно. Если цепи A-B и V’-X’-Y’-Z’ окажутся каноническими в своих шардах, то транзакция полностью финализирована. Если цепи A’-B’-C’-D’ и V-X окажутся каноническими, то транзакция полностью отменена, что приемлемо. Но если, например, A-B и V-X станут каноническими, то одна часть транзакции финализирована, а другая отменена, и транзакция оказывается выполненной частично.

что такое валидаторы в блокчейне. image loader. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-image loader. картинка что такое валидаторы в блокчейне. картинка image loader. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

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

Плохое поведение

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

Целенаправленные форки

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

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

У этой проблемы есть много решений, самое простое из которых иногда сохранять хеш последнего блока в шарде в центральный блокчейн. Алгоритм выбора канонической цепи в шардах затем меняется так, чтобы никакая цель, не содержащая последний сохраненный на центральный блокчейн блок, не могла быть канонический. Затем, чтобы совсем избежать ситуаций когда транзакция выполнена частично из-за того что часть блоков, содержащих ее обновление состояния, оказались вне канонических цепей, можно изменить алгоритм выполнения между-шардовых транзакций так чтобы шард A не принимал доказательство выполнения транзакции в шарде B пока блок, содержащий обновление состояния для транзакции в шарде B, не был сохранен в центральном блокчейне.

Создание невалидных блоков

Если участник смог получить контроль над достаточно большим количеством валидаторов в шарде, он может попытаться создать совершенно невалидный блок. Например, пусть до блока состояние было такое что у Алисы было 10 токенов, а в Боба — 0, блок содержит только одну транзакцию, которая отправляет 10 токенов с аккаунта Алисы на аккаунт Боба, но в новом состоянии отражает 0 токенов у Алисы, и 1000 у Боба.

что такое валидаторы в блокчейне. image loader. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-image loader. картинка что такое валидаторы в блокчейне. картинка image loader. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

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

что такое валидаторы в блокчейне. image loader. что такое валидаторы в блокчейне фото. что такое валидаторы в блокчейне-image loader. картинка что такое валидаторы в блокчейне. картинка image loader. В предыдущей статье мы рассказали о том, что представляет собой обновление сети Ethereum 2.0, для чего нужен этот апгрейд и как будет работать обновленная платформа. Сегодня мы поговорим о перспективах и рисках платформы, а также в валидаторах и их роли в экосистеме Ethereum 2.0.

На рисунке выше пять валидаторов, три из которых под контролем атакующего. Они создали невалидный блок A’, а затем продолжили строить цепь поверх. Два частных валидатора сразу отбросили блок A’ как невалидный и продолжили строить поверх последнего валидного блока, известного им, тем самым создав форк. Поскольку в честной цепи меньше валидаторов чем в нечестной, их цепь короче. Однако, в классическом нешардированном блокчейне все участники системы валидируют все блоки, которые они видят. Таким образом любой участник, использующий блокчейн, увидит что A’ невалиден, отбросит его, а следовательно отбросит и B’, C’ и D’ как построенные поверх невалидного блока, и таким образом все участники будут видеть A-B как каноническую цепь.

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

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

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

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

Я много пишу про блокчейн и шардинг на английском. Мы также периодически берем интервью у авторов других протоколов, таких как Cosmos и Solana, копая глубоко в технические детали. Если вам интересна тема, можно следить за новыми публикациями и видео подписавшись на мой Twitter @AlexSkidanov.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *