Как работают выводы в Эфириуме?
Как работают выводы из стейкинга в Эфириуме после обновления Шанхай/Capella: технический процесс, очередь на вывод и то, что нужно знать стейкерам о доступе к их застейканному ETH.
Date published: 30 марта 2023 г.
Объясняющее видео от Финематикс о том, как работают выводы из стейкинга в Эфириуме после обновления Шанхай/Капелла, включая механику частичных и полных выводов, распространенные заблуждения и последствия для экосистемы стейкинга.
Эта расшифровка является доступной копией оригинальной расшифровки видео (opens in a new tab), опубликованной Финематикс. Она была слегка отредактирована для удобства чтения.
Сигнальная цепочка (0:31)
В связи со стремительным приближением обновления Шанхай/Капелла ведется много дискуссий о выводах из стейкинга в Эфириуме и о том, что это означает для экосистемы Эфириума в целом.
Давайте начнем с понимания того, как мы к этому пришли и почему выводы из стейкинга не были включены, когда Эфириум перешел от доказательства выполнения работы (PoW) к доказательству доли владения (PoS).
Переход к доказательству доли владения происходил в несколько этапов, чтобы свести к минимуму количество крупных изменений, происходящих одновременно. Этот подход был необходим, особенно для устоявшейся сети, обрабатывающей транзакции на триллионы долларов в год. Наиболее значимыми шагами стали: запуск сигнальной цепочки и Слияние.
Запуск сигнальной цепочки в 2020 году заложил основу для перехода путем создания отдельного уровня консенсуса на основе доказательства доли владения, работающего параллельно с цепью Эфириума на основе доказательства выполнения работы. Более ранний запуск сигнальной цепочки позволил накопить достаточно ETH для обеспечения безопасности сети до начала обработки транзакций с реальной стоимостью. Это также позволило тестировать новую модель консенсуса на основе доказательства доли владения в течение длительного периода с реальными средствами в стейкинге.
Ранние участники сети внесли миллионы ETH для обеспечения безопасности сети Эфириума на основе доказательства доли владения, несмотря на то, что знали, что не смогут вывести свои ETH до гораздо более позднего времени.
Следующий большой шаг, Слияние, объединил уровень консенсуса на основе доказательства доли владения с уровнем исполнения. Это позволило окончательно отказаться от доказательства выполнения работы и поддерживать только одну каноническую цепь — Эфириум, — которая теперь защищена миллионами застейканных ETH. Слияние стало, безусловно, самым масштабным изменением в истории Эфириума. Из-за характера обновления оно должно было произойти без какого-либо времени простоя.
Чтобы минимизировать риски, масштаб Слияния был сокращен, и никакие другие функции — кроме перехода от доказательства выполнения работы к доказательству доли владения — не были включены в это обновление. Самое большое «сокращение», которое пришлось сделать, коснулось выводов, которые стали главным фокусом предстоящего обновления Шанхай/Капелла.
Выводы (2:09)
Выводы из стейкинга, как следует из названия, позволят стейкерам выводить свои заблокированные ETH. Существует два типа выводов: «частичные» и «полные».
Частичный вывод происходит, когда валидатор выводит свои накопленные вознаграждения — дополнительный баланс сверх максимального эффективного баланса в 32 ETH. Частичный вывод также может называться «выплатой вознаграждения» или «выплатой избыточного баланса».
Полный вывод происходит, когда валидатор завершил процесс выхода и выводится весь баланс. Это происходит только тогда, когда валидатор выходит из системы либо добровольно, либо будучи принудительно удаленным в процессе, называемом «слэшинг».
После включения выводы из стейкинга будут автоматически распределяться каждые несколько дней. Кроме того, процесс вывода инициируется на уровне консенсуса, поэтому ни на одном из этапов не требуется комиссия за транзакцию.
Чтобы начать выводить свои вознаграждения за стейкинг, валидатору нужно будет предоставить свой адрес для вывода только один раз. Учитывая, что выводы затрагивают как уровень консенсуса, так и уровень исполнения Эфириума, обе части сети должны быть обновлены. «Шанхай» — это название обновления уровня исполнения, содержащего выводы, которые специфицированы в EIP-4895. «Капелла» — это название соответствующего обновления уровня консенсуса, активируемого в то же время. Эти два обновления иногда также называют «Шапелла».
Механика (3:40)
В экосистеме Эфириума каждый валидатор имеет соответствующий номер индекса. Кроме того, у них также есть два типа реквизитов для вывода, определяемых как 0x00 или 0x01.
0x00 указывает на то, что у конкретного валидатора нет связанного адреса для вывода. Эти реквизиты получаются как хеш открытого ключа BLS, первый байт которого заменен на нулевой байт — отсюда и название.
0x01 означает, что валидатор предоставил свой адрес для вывода. Эти реквизиты для вывода представлены как 0x01, за которыми следуют 11 байтов нулей, а затем выбранный адрес Эфириума.
Чтобы включить выводы, валидаторам с реквизитами 0x00 нужно будет подписать сообщение «BLSToExecutionChange». Это станет возможным после обновления Капелла.
Как только выводы будут включены, валидатор, предлагающий блок, будет линейно сканировать индексы валидаторов, чтобы найти первые 16 валидаторов с реквизитами 0x01, которые либо:
- Имеют баланс, превышающий 32 ETH (начисленные вознаграждения валидатора)
- Доступны для вывода (полностью вышли из набора валидаторов)
Линейный поиск останавливается либо после нахождения 16 валидаторов, соответствующих этим критериям, либо после 16 384 итераций. Алгоритм запоминает индекс, на котором остановился поиск, поэтому следующий валидатор, предлагающий блок, может возобновить работу с этого индекса. Дойдя до последнего индекса, алгоритм начинает с самого начала — с индекса 0.
Хорошей аналогией могут служить аналоговые часы, где стрелка указывает на час, движется в одном направлении, не пропускает ни одного часа и в конечном итоге снова возвращается к началу после достижения последнего числа.
После завершения сканирования валидатор создает список выводов для включения в свою полезную нагрузку исполнения. Каждый элемент в списке содержит:
- WithdrawalIndex — монотонно возрастающий индекс, начинающийся с 0, который увеличивается на 1 для каждого вывода, чтобы уникально идентифицировать каждый вывод
- ValidatorIndex — индекс валидатора, чей баланс выводится
- ExecutionAddress — адрес ETH на уровне исполнения, куда должен быть отправлен вывод
- Amount — сумма в Gwei, которая должна быть отправлена на адрес исполнения
При создании или обработке блока клиенты уровня исполнения применяют эти выводы в конце блока. Обработка выводов не конкурирует с пользовательскими транзакциями за место в блоке. При максимальном количестве 16 выводов, обрабатываемых в одном блоке, в день должно обрабатываться максимум 115 200 выводов, при условии отсутствия пропущенных слотов.
Дизайн выводов прост, но при этом чрезвычайно надежен.
Заблуждения (6:30)
Первое заблуждение гласит, что при обработке выводов существует разница между «полным» и «частичным» выводом с точки зрения приоритета или очередности. Как полные, так и частичные выводы происходят, когда линейное сканирование набора валидаторов достигает индекса валидатора. Единственная разница заключается в том, что в случае полных выводов валидатор должен покинуть очередь на выход и достичь «эпохи, доступной для вывода» (withdrawable epoch), прежде чем линейное сканирование сможет его выбрать.
Другое заблуждение заключается в том, что пользователи потеряют свои вознаграждения, если не предоставят адрес для вывода. Это не так — в случае, если валидатор забудет предоставить адрес для вывода, его вознаграждения в ETH не будут отправлены в пустоту после включения выводов. Вместо этого сканирование пропустит валидаторов, которые не предоставили свои адреса для вывода.
Важно помнить, что адрес для вывода не может быть изменен и устанавливается только один раз. Стейкеры должны быть предельно осторожны при настройке адреса для вывода, убедившись, что они имеют полное право собственности на предоставленный адрес.
Существуют также предположения, что стейкеры выведут много ETH из экосистемы Эфириума после включения выводов, причем более сильная версия этого аргумента предполагает, что это дестабилизирует механизм консенсуса на основе доказательства доли владения. Хотя мы не можем полностью предсказать, сколько ETH будет выведено с течением времени, есть несколько важных контраргументов:
Во-первых, большинство стейкеров — это ранние последователи Эфириума, которые были достаточно смелыми, чтобы начать стейкать, когда еще было неясно, когда будут включены выводы. Многие стейкеры выразили желание продолжить стейкинг для поддержки сети и продолжения получения вознаграждений, номинированных в ETH.
Во-вторых, чтобы гарантировать стабильность механизма консенсуса на основе доказательства доли владения и активного набора валидаторов, в Эфириуме реализована очередь на вывод для всех валидаторов, желающих выйти. Эта очередь ограничивает количество валидаторов, которые могут покинуть экосистему одновременно.
Первое сканирование выводов выведет много накопленных вознаграждений — по сути, с момента создания сигнальной цепочки. Однако последующие сканирования будут обрабатывать гораздо меньшее количество ETH.
Последствия (8:39)
Включение выводов создаст открытый, двусторонний поток стейкинга. В настоящее время поток стейкинга односторонний — ETH может только поступать в сеть и никогда не выходить из нее. Интересно, что включение выводов может стимулировать еще больше людей к стейкингу, поскольку они будут знать, что всегда могут вывести свои ETH, если они понадобятся для чего-то другого.
Стейкеры, которые не запускают собственных валидаторов и стейкают через централизованного провайдера стейкинга, смогут сменить своего провайдера на другого. Они могут вывести средства от провайдера, предлагающего более низкую ставку стейкинга, к тому, кто предлагает лучшую ставку, перейти от централизованного провайдера к децентрализованному или даже запустить собственного валидатора.
Выводы также повлияют на деривативы ликвидного стейкинга, такие как Lido, Rocket Pool и другие. Токены ликвидного стейкинга (LST), такие как stETH или rETH, имели историю временной потери своей привязки к цене ETH во время рыночной турбулентности. Однако с двусторонним потоком стейкинга любое значительное расхождение в их привязке будет быстро устранено с помощью арбитража.
Ранние участники рынка ликвидного стейкинга и централизованного стейкинга захватили подавляющее большинство рынка, поскольку у них не было большой конкуренции. Однако доля рынка этих действующих игроков может претерпеть серьезные изменения после включения выводов, особенно если они не предложат конкурентоспособную ставку. Возможность свободно переключаться между провайдерами стейкинга пойдет на пользу рынку стейкинга ETH.
Краткие итоги (10:01)
Включение выводов из стейкинга — одно из самых ожидаемых обновлений Эфириума. Будет чрезвычайно важно убедиться, что это изменение выполнено гладко. Чтобы помочь с тестированием, валидаторам будут доступны несколько сетей для разработчиков (devnets) и тестовых сетей (testnets), чтобы пройти через этот процесс и сгладить любые потенциальные проблемы перед запуском в Мейннет.
Выводы — это еще одно улучшение, которое на шаг приближает Эфириум к построению устойчивого, безопасного и децентрализованного будущего. Ожидается, что обновление Шапелла состоится в первой половине 2023 года.
На момент создания этого видео сигнальная цепочка накопила более 17 миллионов ETH у более чем 530 000 валидаторов. Средний баланс валидатора составляет чуть более 34 ETH, что означает более 1 миллиона ETH в виде накопленных вознаграждений. Будет интересно посмотреть, как выводы повлияют на эти цифры.