Перейти к основному содержанию
Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →
Источник истины. На этой странице адреса программ указаны только один раз. Все остальные страницы ссылаются на неё. При изменении идентификатора обновляйте его только здесь, и все ссылки на сайте останутся согласованными.Всегда проверяйте значения через live API (https://api-v3.raydium.io/main/info) перед подписанием реальных транзакций.

Mainnet-beta

Основное правило: если программный ID, который вы встретили, не совпадает с таблицей ниже, не подписывайте транзакцию. Несоответствие программного ID — это самый простой способ потерять средства в Solana.

On-chain программы

Примечания:
  • AMM v4 и Farm v3/v5 сохраняются для существующих пулов и позиций. Интерфейс Raydium и SDK направляют создание новых пулов и новых экосистемных ферм на CPMM, CLMM и Farm v6 соответственно — см. protocol-overview/versions-and-migration.
  • ID Farm v3 выше также служит программой одноактивного стейкинга $RAY. Поведение идентично Farm v3 для LP стейкинга.
  • Stable AMM — это отдельная программа, на которую может указывать программа AMM Routing наряду с AMM v4, CPMM и CLMM. Ликвидность невелика по сравнению с тремя другими программами, и SDK не предоставляет для неё API первого класса; интеграторы, направляющие трафик через неё, обычно делают это через маршрутизатор.
  • Доступность исходного кода. Из on-chain программ выше только raydium-amm (AMM v4), raydium-cp-swap (CPMM) и raydium-clmm (CLMM) поставляются с публичными репозиториями исходного кода в github.com/raydium-io. Stable AMM, LaunchLab, AMM Routing, Burn & Earn / LP Lock и программы Farm не являются открытыми — проверяйте их через live API, on-chain bytecode и опубликованные IDL в raydium-io/raydium-idl.

Общая админ-авторитет

Все программы на основе Anchor (CLMM, CPMM, LaunchLab, Lock) используют один жёстко закодированный публичный ключ админа для контроля доступа на уровне инструкций к админ-функциям (например CreateAmmConfig или UpdatePoolStatus): Авторитеты на уровне аккаунта (например protocol_owner, fund_owner на AmmConfig CPMM/CLMM или кошельки миграции на GlobalConfig LaunchLab) хранятся on-chain и могут отличаться от админа программы. Читайте их непосредственно из соответствующего конфиг-аккаунта перед отправкой критичных транзакций.

Общие конфиги и PDA соглашения

Несколько программ Raydium предоставляют конфиг-аккаунты, публичные ключи которых стабильны и указаны в публичном API. Предпочитайте поиск через API вместо жёсткого кодирования:
Параметры комиссии AmmConfig CPMM по умолчанию с индексом 0 (стандартный пул 0.25%) для справки: См. products/cpmm/fees для понимания того, как комиссии распределяются, и reference/fee-comparison для матрицы сравнения продуктов.

PDA seeds

Приведённые ниже seeds являются каноническими и используются как SDK, так и on-chain CPI. Всегда вычисляйте PDA; не жёстко кодируйте полученные адреса.
token0Mint / token1Mint должны быть отсортированы в порядке байт публичного ключа (token0 < token1) перед хешированием. Ошибка здесь приведёт к валидному PDA для несуществующего пула. Эквивалентные CLMM seeds следуют тому же стилю; см. products/clmm/accounts.

Devnet

REST API base для devnet: https://api-v3-devnet.raydium.io/ (та же схема маршрутов, что и на mainnet).

Как проверить адрес on-chain

  1. Solana Explorer. Вставьте адрес в explorer.solana.com и убедитесь, что он помечен как Program с текущей авторитетом обновления. На mainnet-beta должны отображаться деплои, подписанные авторитетом обновления Raydium.
  2. CLI. Используйте solana program show <PROGRAM_ID> -u mainnet-beta для проверки слота деплоя, BPF loader, авторитета обновления и длины данных. Запишите это в ваш runbook.
  3. IDL attachment. Запросите on-chain IDL с помощью anchor idl fetch <PROGRAM_ID> --provider.cluster mainnet. Поле address в IDL должно совпадать. Те же IDL зеркалируются на github.com/raydium-io/raydium-idl — сравните on-chain IDL с репозиторием перед тем как доверять ему.
  4. Авторитеты конфига/админа. Для конфиг-аккаунтов CPMM/CLMM прочитайте поле owner/protocol_owner и убедитесь, что оно совпадает с текущим multisig Raydium, опубликованным в security/admin-and-multisig.
Если какая-либо из четырёх проверок выше не согласуется с этой страницей, рассматривайте эту страницу как неправильную и откройте проблему перед написанием нового кода для этих адресов.

Обновление этой страницы

  • Изменения в программных ID являются критичными для безопасности. Не выпускайте изменение программного ID без (a) ссылки на объявление Raydium, (b) добавления записи в reference/changelog и (c) проверки всех ссылок в документации, чтобы убедиться, что ни одна страница всё ещё не ссылается на старое значение.
  • Deprecated программы остаются в таблице с примечанием о статусе, а не удаляются — существующие пулы всё ещё разрешаются через старую программу.
Источники: