SPL Token: Стандарт для активов в Solana

Ключевые выводы
• SPL Token является аналогом ERC-20 для сети Solana.
• Token-2022 предлагает расширенные функции для создания токенов с учетом требований соответствия.
• Низкие комиссии и высокая пропускная способность Solana делают токены удобными для использования в реальном времени.
• Важно соблюдать лучшие практики безопасности при выпуске и управлении токенами.
Стандарт SPL Token в Solana является основой для взаимозаменяемых активов в сети — таких как стейблкоины, бонусные баллы, токены управления и даже программные денежные потоки. Если вы знакомы с ERC-20 Ethereum, SPL выполняет аналогичную роль, но оптимизирован для высокопроизводительной архитектуры Solana с низкой задержкой. К 2025 году стандарт вышел за рамки простых балансов: расширения, такие как хуки передачи (transfer hooks) и конфиденциальные переводы (confidential transfers), переопределяют возможности токенизированных активов на быстрой и экономически эффективной цепочке.
В этом руководстве объясняется, как работают SPL токены, что нового в Token-2022, как выпускать и обеспечивать безопасность активов, а также на что разработчикам и пользователям следует обратить внимание по мере масштабирования Solana.
Что такое SPL Token?
SPL токены управляются ончейн-программами, которые определяют, как токены минтятся (создаются), передаются и хранятся. Каноническая программа Token Program реализует основное поведение для взаимозаменяемых активов в Solana. В центре внимания три концепции:
- Минт (Mint): Определение токена (предложение, десятичные знаки, полномочия).
- Токен-аккаунт (Token account): Аккаунт, который хранит баланс конкретного минта для конкретного владельца.
- Полномочия (Authorities): Специальные привилегии, такие как минтинг нового предложения или заморозка аккаунтов.
Хорошей отправной точкой является официальная документация SPL Token Program, которая подробно охватывает конфигурацию минта, десятичные знаки и управление полномочиями. См. ссылку на Solana Program Library в разделе Token program для получения подробной информации и руководства по CLI (spl-token).
Под капотом, модель аккаунтов Solana организует данные и владение таким образом, чтобы операции с токенами были дешевыми и параллелизуемыми. Если вы новичок в структуре данных Solana и механизмах аренды (rent mechanics), просмотрите основную модель в документации Solana по аккаунтам, чтобы понять, как балансы токенов хранятся в аккаунтах и почему "не облагаемые арендой" (rent-exempt) лампорты имеют значение.
Большинство кошельков и dApps используют программу Associated Token Account (ATA) Program для получения канонического токен-аккаунта для каждого кошелька и каждого минта. ATA упрощают пользовательский опыт, уменьшают путаницу с адресами и делают переводы предсказуемыми. Узнайте больше в документации Associated Token Account program.
- Ссылка на Token Program: SPL Token Program
- Модель аккаунтов: Solana accounts programming model
- ATA: Associated Token Account Program
Token-2022 и расширения: готовые к использованию программируемые активы
Хотя классическая программа Token Program по-прежнему широко используется, Solana представила программу нового поколения "Token-2022" с опциональными расширениями, которые добавляют мощные функции без создания специализированной логики токенов. Многие команды теперь выбирают Token-2022 для выпуска активов, учитывающих требования соответствия (compliance-aware) или обладающих богатой функциональностью. Изучите обзор в документации Token-2022 и полный каталог в Token-2022 extensions.
Заметные расширения включают:
- Хук передачи (Transfer hook): Направление переводов через пользовательскую программу для проверок, таких как списки разрешенных (allowlists), лимиты скорости или распределение комиссий ончейн. См. transfer hook в Token-2022 extensions.
- Конфиденциальный перевод (Confidential transfer): Скрытие балансов и сумм с использованием техник нулевого разглашения (zero-knowledge), сохраняя при этом возможность аудита при необходимости. См. confidential transfers в Token-2022 extensions.
- Состояние аккаунта по умолчанию и постоянный делегат (Default account state and permanent delegate): Принудительное замораживание новых аккаунтов или разрешение назначенному делегату перемещать средства в сценариях восстановления/соответствия. См. default account state and permanent delegate в extensions.
- Указатель на метаданные и полномочие закрытия минта (Metadata pointer and mint close authority): Стандартизированные ончейн-ссылки на метаданные и более безопасный контроль жизненного цикла минта. См. metadata pointer в Token-2022 extensions.
Solana Labs предлагает общий обзор того, почему расширения токенов важны для регулируемых и корпоративных сценариев использования, в блоге Solana о расширениях токенов.
- Обзор Token-2022: Token-2022 overview
- Каталог расширений: Token-2022 extensions
- Почему это важно: Token extensions on the Solana blog
Примечание о совместимости: Некоторые кошельки и dApps еще не полностью поддерживают определенные расширения. Если вы планируете использовать хуки передачи или конфиденциальные переводы, проведите широкое тестирование в devnet и документируйте требования для интеграторов.
Комиссии, пропускная способность и их влияние на пользовательский опыт токенов
Низкие базовые комиссии Solana делают микроплатежи и детальную компоновку практически осуществимыми. Недавние основные изменения улучшили предсказуемость во время пиковых нагрузок:
- Приоритетные комиссии (Prioritization fees): Позволяют пользователям добровольно платить больше за более быстрое включение транзакций, когда место в блоке ограничено. Прочитайте о приоритетных комиссиях в Solana implemented proposals.
- Локальные рынки комиссий (Local fee markets): Уменьшают перегрузку, изолируя "горячие точки" на уровне аккаунтов, что помогает сохранять плавность обычных токенов, даже когда популярная программа находится под нагрузкой. См. local fee markets в Solana implemented proposals.
По мере развития производительности сети — включая независимую работу клиентов, такую как Firedancer от Jump Crypto — операции с токенами должны оставаться быстрыми и надежными, даже при росте использования. Узнайте больше об инициативе Firedancer.
- Приоритетные комиссии: Prioritization fees
- Локальные рынки комиссий: Local fee markets
- Работа по масштабированию: Jump Crypto’s Firedancer
Распространенные варианты использования SPL Token
-
Платежи и коммерция: Низкая задержка при передаче и предсказуемые расходы позволяют осуществлять оплату в реальном времени, подписки и денежные переводы. Шаблоны Solana Pay и QR-кодированные потоки широко используются разработчиками; изучите открытый SDK на Solana Pay GitHub для моделирования запросов на оплату и квитанций.
-
Ликвидность DeFi: AMM, протоколы кредитования и перпетуальные контракты (perps) используют балансы SPL для расчетов. Стандартизация токен-аккаунтов и одобрений (делегатов) упрощает компоновку.
-
Активы, учитывающие требования соответствия (Compliance-aware assets): Хуки передачи, замороженные по умолчанию аккаунты и постоянные делегаты делают Token-2022 привлекательным для учреждений или выпуска RWA (Real-World Assets) с программируемыми политиками.
-
NFT и токенизированные медиа: Metaplex использует стандарт Token в сочетании с ончейн-метаданными для представления коллекционных предметов и цифровых товаров; см. документацию Metaplex Token Metadata.
-
Метаданные Metaplex: Metaplex Token Metadata
Выпуск собственного SPL Token: практический чек-лист
-
Выберите программу
- Классическая программа Token Program: Простая, широко поддерживаемая, идеально подходит для обычных взаимозаменяемых токенов.
- Token-2022: Выбирайте, если вам нужны расширения, такие как хуки передачи, конфиденциальные переводы, указатели на метаданные или управление состоянием аккаунта.
Прочитайте обзор: Token-2022 overview
-
Определите параметры
- Десятичные знаки (обычно: 6 или 9)
- Полномочия минта и заморозки
- Модель предложения (фиксированный верхний предел или минтинг по мере необходимости)
-
Инициализируйте с помощью CLI
- Установите Solana CLI и утилиту
spl-token
. - Создайте минт, создайте ATA для вашего казначейства, выполните минтинг начального предложения.
- При желании назначьте мультисиг в качестве полномочий минта и отзовите их по завершении, чтобы обеспечить жесткий верхний предел.
Справочник: SPL Token Program и CLI
- Установите Solana CLI и утилиту
-
Добавьте метаданные
- Для классических токенов используйте программу Metaplex Token Metadata, чтобы прикрепить имя, символ и URI значка.
- Для Token-2022 вы также можете использовать расширение указателя на метаданные (metadata pointer extension), чтобы указать на вашу схему метаданных.
- Метаданные: Metaplex Token Metadata
- Указатель на метаданные: Token-2022 extensions (metadata pointer)
-
Распространяйте и листингуйте безопасно
- Публикуйте адрес минта крупно — не полагайтесь на символы.
- Предоставьте значок токена и проверенные метаданные.
- Для кросс-чейн потоков используйте аудированные мосты (bridges) и четкую маршрутизацию. См. Wormhole docs для широко используемого фреймворка мостов.
- Мосты: Wormhole documentation
Лучшие практики по безопасности и соответствию
- Используйте мультисиг для чувствительных полномочий: Token Program поддерживает нативный мультисиг-аккаунт для полномочий минта/заморозки; настройте его перед распространением, чтобы снизить риск единой точки отказа. См. multisig в SPL Token docs.
- Рассмотрите возможность отзыва полномочий минта: Если ваша модель требует фиксированного верхнего предела, отзовите полномочия минта после первоначального распространения. Это необратимо.
- Проверяйте по адресу минта, а не по символу: Символы не являются уникальными. Всегда предъявляйте и проверяйте публичный ключ минта.
- Планируйте аренду и жизненный цикл аккаунтов: Токен-аккаунты должны быть не облагаемыми арендой (rent-exempt). Информируйте пользователей о закрытии пустых аккаунтов для возврата ламп, или предложите функцию "очистки" (cleanup UX).
- Тщательно тестируйте расширения Token-2022: Некоторым кошелькам и индексаторам может потребоваться дополнительная работа для хуков передачи или конфиденциальных балансов. По возможности предоставьте запасной вариант без расширений.
- Уважайте конфиденциальность пользователей и местные нормативные акты: Если вы используете хуки передачи или политики "заморожено по умолчанию", четко сообщайте об этом и публикуйте исходный код вашей политики программы и план обновлений.
Ссылки:
Для разработчиков: корректные шаблоны и распространенные ошибки
- Всегда проверяйте минт: Перед любой передачей убедитесь, что как исходный, так и целевой токен-аккаунт соответствуют ожидаемому минтру и владельцу.
- Используйте ATA Program: Создавайте и выводите канонические токены-аккаунты с помощью Associated Token Account Program, чтобы избежать несоответствия адресов.
- Аккуратно управляйте делегатами и разрешениями: Делегирование позволяет программе перемещать токены от имени пользователя — четко определяйте разрешения и отзывайте их по завершении.
- Используйте ограничения Anchor или эквивалентные проверки во время выполнения: В Anchor используйте ограничения типа
#[account([address](https://onekey.so/blog/ru/ecosystem/what-is-a-crypto-wallet-address/) = …)]
и#[account(mint = …)]
, чтобы сделать проверки минта/владельца явными. См. Anchor docs для шаблонов проверки аккаунтов. - Помните о вычислениях и CPI при использовании хуков: Хуки передачи добавляют дополнительный переход через программу и могут привести к сбою передачи; выделяйте вычислительные ресурсы соответствующим образом и предоставляйте четкие сообщения об ошибках.
- Обрабатывайте закрытие аккаунтов: При сжигании до нуля рассмотрите возможность закрытия токен-аккаунта для возврата арендной платы; выведите этот путь в вашем пользовательском интерфейсе.
Справочники для разработчиков:
- ATA Program: Associated Token Account Program
- Фреймворк Anchor: Anchor documentation
- Каталог расширений Token-2022: Token-2022 extensions
Что дальше для активов SPL
По мере того как пропускная способность Solana и дизайн рынка комиссий продолжают развиваться, наиболее выиграют сценарии использования токенов, требующие как скорости, так и программируемости — такие как платежи в реальном времени, расчеты RWA и встроенные финансовые услуги. Расширения в Token-2022 предоставляют стандартизированные, проверенные строительные блоки для активов, учитывающих требования соответствия, в то время как альтернативные клиентские программы валидаторов, такие как Firedancer, нацелены на дальнейшее повышение производительности для следующей волны адаптации.
- Работа по масштабированию: Jump Crypto’s Firedancer
- Улучшения рынка комиссий: Local fee markets и prioritization fees
Безопасное хранение и выпуск SPL токенов
Независимо от того, являетесь ли вы опытным пользователем, казначеем или эмитентом, управляющим полномочиями, ваши приватные ключи являются единой точкой отказа. Аппаратный кошелек помогает хранить ключи в офлайне и прозрачно проводить одобрения транзакций. OneKey является open-source и поддерживает Solana, что позволяет вам:
- Хранить полномочия минта/заморозки и казначейства в холодных хранилищах.
- Просматривать переводы токенов и обновления полномочий на безопасном экране перед подписанием.
- Использовать одно и то же устройство на настольном компьютере и мобильном телефоне с приложением OneKey для SPL токенов.
Если ваш проект полагается на функции Token-2022, такие как хуки передачи или указатели на метаданные, тщательно протестируйте потоки подписания и одобрения с аппаратным кошельком перед запуском, чтобы обеспечить бесперебойный пользовательский опыт.
Дополнительное чтение: