Аккаунты для стейкинга
Аккаунт для стейкинга в Solana может использоваться для делегирования токенов валидаторам в сети с целью потенциального получения вознаграждений для владельца аккаунта. Аккаунты для стейкинга создаются и управляются иначе, чем традиционный адрес кошелька, известный как системный аккаунт. Системный аккаунт может только отправлять и получать SOL от других аккаунтов в сети, тогда как аккаунт для стейкинга поддерживает более сложные операции, необходимые для управления делегированием токенов.
Аккаунты для стейкинга в Solana также работают иначе, чем в других блокчейнах с механизмом Proof-of-Stake, с которыми вы могли быть знакомы. Этот документ описывает общую структуру и функции аккаунта для стейкинга в Solana.
Адрес аккаунта
Каждый аккаунт для стейкинга имеет уникальный адрес, который можно использовать для поиска информации об аккаунте в командной строке или в любых инструментах для исследования сети. Однако, в отличие от адреса кошелька, где владелец keypair адреса контролирует кошелек, keypair, связанный с адресом аккаунта для стейкинга, не обязательно имеет контроль над аккаунтом. На самом деле, keypair или приватный ключ могут даже не существовать для адреса аккаунта для стейкинга.
Единственный случай, когда у адреса аккаунта для стейкинга есть файл keypair, — это при создании аккаунта для стейкинга с использованием инструментов командной строки. Сначала создается новый файл keypair только для того, чтобы гарантировать, что адрес аккаунта для стейкинга новый и уникальный.
Понимание полномочий аккаунта
Некоторые типы аккаунтов могут иметь одну или несколько подписывающих полномочий, связанных с данным аккаунтом. Полномочие аккаунта используется для подписания определенных транзакций для управляемого им аккаунта. Это отличается от некоторых других блокчейнов, где владелец keypair, связанного с адресом аккаунта, контролирует всю активность аккаунта.
Каждый аккаунт стейкинга имеет две полномочия подписи, указанные их соответствующими адресами, каждый из которых уполномочен выполнять определённые операции с аккаунтом стейкинга.
Полномочие стейкинга используется для подписания транзакций при выполнении следующих операций:
- Делегирование стейка
- Деактивация делегирования стейка
- Разделение аккаунта стейкинга, создание нового аккаунта стейкинга с частью средств из первого аккаунта
- Объединение двух аккаунтов стейкинга в один
- Назначение нового полномочия стейкинга
Полномочие вывода используется для подписания транзакций при выполнении следующих операций:
- Вывод неделегированного стейка на адрес кошелька
- Назначение нового полномочия вывода
- Назначение нового полномочия стейкинга
Полномочия стейкинга и вывода устанавливаются при создании аккаунта стейкинга, и их можно изменить в любое время, чтобы авторизовать новый адрес для подписи. Полномочия стейкинга и вывода могут быть назначены одному и тому же адресу или двум разным адресам.
Ключевая пара полномочия вывода обладает большим контролем над аккаунтом, так как она необходима для ликвидации токенов в аккаунте стейкинга и может быть использована для сброса полномочия стейкинга, если ключевая пара полномочия стейкинга утеряна или скомпрометирована.
Обеспечение безопасности полномочия вывода от потери или кражи имеет первостепенное значение при управлении аккаунтом стейкинга.
Множественные делегирования
Каждый аккаунт стейкинга может быть использован для делегирования только одному валидатору за раз. Все токены в аккаунте либо делегированы, либо неделегированы, либо находятся в процессе делегирования или отмены делегирования. Чтобы делегировать часть ваших токенов валидатору или делегировать нескольким валидаторам, необходимо создать несколько аккаунтов стейкинга.
Это можно сделать, создав несколько стейк-аккаунтов из одного адреса кошелька, содержащего токены, или создав один крупный стейк-аккаунт и используя полномочия стейка для разделения аккаунта на несколько аккаунтов с выбранными вами балансами токенов.
Одни и те же полномочия на стейк и вывод могут быть назначены нескольким стейк-аккаунтам.
Объединение стейк-аккаунтов
Два стейк-аккаунта с одинаковыми полномочиями и блокировкой могут быть объединены в один итоговый стейк-аккаунт. Объединение возможно для двух стейков в следующих состояниях без дополнительных условий:
- два деактивированных стейка
- неактивный стейк и активирующийся стейк в течение его эпохи активации
Для следующих случаев должны совпадать pubkey голосующего и наблюдаемые кредиты голосов:
- два активированных стейка
- два активирующихся аккаунта, которые разделяют эпоху активации, в течение эпохи активации
Все остальные комбинации состояний стейков не смогут быть объединены, включая все "переходные" состояния, когда стейк активируется или деактивируется с ненулевым эффективным стейком.
Разогрев и охлаждение делегирования
Когда стейк-аккаунт делегируется или делегирование деактивируется, операция не вступает в силу немедленно.
Делегирование или деактивация занимают несколько эпох для завершения, при этом часть делегирования становится активной или неактивной на границе каждой эпохи после того, как транзакция с инструкциями была отправлена в кластер.
Существует также ограничение на то, сколько общего стейка может быть делегировано или деактивировано в одной эпохе, чтобы предотвратить резкие изменения стейка в сети в целом. Поскольку разогрев и охлаждение зависят от поведения других участников сети, их точная продолжительность трудно предсказуема. Подробности о времени разогрева и охлаждения можно найти здесь.
Локации
Стейкинг-аккаунты могут иметь локацию, которая предотвращает вывод токенов до наступления определённой даты или эпохи. Во время действия локации стейкинг-аккаунт всё ещё может быть делегирован, отменён, разделён, а также его полномочия на стейкинг могут быть изменены как обычно. Единственное, что запрещено, — это вывод средств на другой кошелёк или обновление полномочий на вывод.
Локация может быть добавлена только при создании стейкинг-аккаунта, но её можно изменить позже с помощью полномочий на локацию или кустодиана, адрес которых также задаётся при создании аккаунта.
Уничтожение стейкинг-аккаунта
Как и другие типы аккаунтов в сети Solana, стейкинг-аккаунт с балансом 0 SOL больше не отслеживается. Если стейкинг-аккаунт не делегирован и все токены, которые он содержит, выведены на адрес кошелька, аккаунт по этому адресу фактически уничтожается, и для повторного использования адреса его нужно будет создать вручную.
Просмотр стейкинг-аккаунтов
Детали стейкинг-аккаунта можно просмотреть в Solana Explorer, скопировав и вставив адрес аккаунта в строку поиска.
Is this page helpful?