Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →
В каждой программе Raydium есть хотя бы одна привилегированная роль — ключ, который может обновлять программу, создавать новые конфиги или выводить протокольные комиссии. Минимизация полномочий этих ролей (и защита их мультисигами с задержкой) — главная защита от компрометации администратора. На этой странице описаны все роли и способы их защиты на практике.
Роли по программам
AMM v4
CPMM
CLMM
limit_order_admin — намеренно узкая операционная роль. Она существует для того, чтобы off-chain кипер мог исполнять заполненные ордера без участия их владельцев. Ключ кипера горячий (хранится на VM кипера) и ротируется независимо от мультисигов выше. Конкретно, полномочия кипера ограничены:
SettleLimitOrder— отправить заполненный выход ордера в ATA владельца по лимитной цене ордера.CloseLimitOrder— закрыть аккаунт полностью исполненного ордера для возврата ренты (рента идёт владельцу ордера).
OpenLimitOrder, IncreaseLimitOrder, DecreaseLimitOrder, изменить какое-либо поле пула или подписать любую другую инструкцию — эти проверки реализованы on-chain через seed и has_one ограничения в структуре Accounts инструкции. Скомпрометированный кипер в худшем случае становится недоступным (ордера остаются незакрытыми, пока владелец не исполнит их самостоятельно) или исполняет/закрывает правомерно заполненные ордера не в том порядке; он не может переместить средства пользователей куда-либо, кроме уже авторизованного владельцем места назначения.
Farm v6
Отдельные фармы не имеют протокольного администратора — создатель каждого фарма управляет только своим фармом, а его полномочия ограничены (нельзя изъять стейки пользователей, нельзя изменить mint стейкинга).
LaunchLab
У запусков нет протокольного администратора, который мог бы изменять кривые или изымать собранные средства.
Авторитет обновления программы
Программы Raydium используют стандартный механизм обновления Solana — BPF Loader v3. Авторитет обновления для всех программ принадлежит мультисигу Squads с порогом 3/4. Почему 3/4: достаточно подписантов, чтобы единственная компрометация не давала контроля, и достаточно мало, чтобы согласование легитимного обновления оставалось управляемым. Четыре авторитета — независимые, air-gapped подписанты на холодных устройствах у ключевых участников команды. Последовательное подписание исключает параллельные подтверждения одной транзакции; транзакции имеют фиксированное окно истечения. Операции мультисига периодически проверяются в рамках партнёрства с Solana STRIDE Program (Asymmetric Research).Удаление авторитета обновления
Raydium не установил авторитет обновления ни одной программы в null. Протокол придерживается принципа, что программы должны быть обновляемыми (для исправления ошибок, добавления расширений вроде Token-2022, устранения дрейфа интеграций). Компромисс: пользователи доверяют тому, что мультисиг 3/4 будет разворачивать только тщательно проверенные обновления. Для пользователей, предпочитающих неизменяемую альтернативу: более старая программа AMM v4 остаётся стабильной с момента последнего аудита — ноль обновлений за 18 месяцев. Этот путь фактически заморожен, несмотря на то что авторитет всё ещё существует.Авторитет AmmConfig
Создание каждого нового AmmConfig требует разрешения — казначейский мультисиг 3/5 авторизует новые уровни комиссий и шаги тиков. Существующие пулы ссылаются на свой AmmConfig по PDA; уровень комиссии пула определяется именно AmmConfig. Могут ли администраторы изменить существующий AmmConfig? Технически да —updateAmmConfig доступен администратору. На практике изменения развёрнутых AmmConfigs избегаются, поскольку они незаметно меняют экономику всех пулов, использующих этот конфиг. Политика протокола — создавать новый AmmConfig при любых изменениях и мигрировать.
Могут ли администраторы украсть протокольные комиссии через конфиг? Нет — AmmConfig содержит параметры комиссий, но не адрес получателя протокольных комиссий; это отдельный неизменяемый адрес для каждого пула.
Получение протокольных комиссий
Часть комиссий swap (как правило, 3–12 bps от 25 bps комиссии swap, в зависимости от конфига) накапливается в хранилище протокольных комиссий. Мультисиг может выводить эти накопленные комиссии. Баланс LP пользователей при этом не изменяется — это заранее выделенная доля протокола, а не средства LP.Авторитет создателя фарма
В Farm v6 создатель фарма имеет право:- Пополнять хранилище вознаграждений (добавлять токены).
- Продлевать расписание (откладывать дату окончания).
- Вызывать
withdrawRewardпосле окончания для возврата неиспользованного баланса хранилища.
- Выводить застейканные LP пользователей.
- Изменять mint стейкинга.
- Ретроактивно изменять ставки эмиссии (только в будущем через
setRewards). - Замораживать харвесты пользователей.
Конфигурация мультисига Squads
Raydium использует два отдельных мультисига Squads для разных категорий рисков. Оба можно проверить on-chain через интерфейс Squads Protocol.
Операционные свойства мультисига обновлений:
- Таймлок 24 часа на любую транзакцию. Обновление, одобренное сегодня, выполнится не ранее чем через 24 часа, давая пользователям время отреагировать.
- Air-gapped холодные устройства для подписания. Из холодных устройств физически извлечены сетевые карты; они подключаются только к аппаратному кошельку и получают данные транзакций через QR-код с отдельного горячего устройства.
- Последовательное подписание. Только после того как одно холодное устройство создаст и подпишет транзакцию, следующее может начать свой процесс подписания — это исключает конфликтующие или параллельные подписи одной транзакции.
- Истечение транзакций. Каждая транзакция имеет фиксированное окно истечения, поэтому устаревшие транзакции аннулируются автоматически.
- TOTP + физический ключ на горячих устройствах, используемых для инициирования транзакций и on-chain трансляции.
- Публичная очередь транзакций. Любой желающий может отслеживать ожидающие обновления через интерфейс Squads.
Проверка авторитета on-chain
Простейший способ проверить текущий авторитет обновления программы:Authority не совпадает с ожидаемым адресом мультисига Squads, что-то не так. Raydium публикует ожидаемые адреса авторитетов на reference/program-addresses.
Для ролей AmmConfig / администратора пула — получите on-chain аккаунт и декодируйте:
История изменений авторитетов
Рекомендации для пользователей
Что стоит делать пользователю/LP/интегратору?- Проверяйте авторитет обновления перед крупными вложениями. Убедитесь, что он совпадает с задокументированным мультисигом.
- Следите за активностью мультисига. Squads UI показывает ожидающие транзакции; запланированное обновление даёт 24 часа на выход, если вы не согласны с изменением.
- Стратегии вывода с учётом таймлока. Если вы используете авто-компаундер, убедитесь, что путь вывода не зависит от инструкции, которая в данный момент изменяется.
- Не рассчитывайте на неизменяемость программ. Каждая программа Raydium может быть обновлена; планируйте это заранее.
Подводные камни для интеграторов
1. Кэширование адресов авторитетов
Если вы жёстко прописываете авторитет обновления или адрес мультисига администратора в коде, а он впоследствии меняется, ваша проверка перестаёт работать. Получайте актуальные данные сreference/program-addresses во время выполнения или обновляйте их периодически.
2. Предположение о стабильности AmmConfigs
Новый AmmConfig может быть создан в любое время. Ваш агрегатор/роутер должен периодически (раз в час достаточно) перезагружать полный список конфигов.3. Векторы злоупотреблений со стороны создателя фарма
Если вы вкладываете средства в фарм с низкой репутацией, создатель может досрочно завершить фарм и вернуть хранилище вознаграждений (при условии, что никто ещё не застейкал средства). После того как пользователи застейкали, пропорциональные права требования обеспечиваются программой; вернуть можно только остаток после корректного завершения.Ссылки
reference/program-addresses— канонические адреса авторитетов.security/attack-vectors— как проявляются компрометации администратора.ray/treasury— адреса казначейства и сбора комиссий.security/disclosure— сообщение о подозрительных проблемах с администратором.
- Squads Protocol — интерфейс мультисига.
- Solana BPF Loader docs — механизм обновления.

