Валидатор Solana-адресов

Убедитесь, что Solana-адрес сформирован правильно, и узнайте, обычный ли это аккаунт кошелька или program-derived address (PDA), например токен-аккаунт. Работает для SOL, USDC и USDT в сети Solana.

Вставьте до 200 адресов. Каждый декодируется, его контрольная сумма проверяется, а сеть и тип адреса определяются.
Выберите сеть, в которой собираетесь отправлять. Корректный адрес не той сети будет помечен.

Проверка выполняется в вашем браузере на JavaScript. Адреса никогда не загружаются и не хранятся.

Что такое валидатор Solana-адресов?

Валидатор Solana-адресов проверяет, что строка — это Base58-кодировка ровно 32 байт (размер публичного ключа ed25519), а затем тестирует, декодируются ли эти байты в точку на кривой ed25519. Ключи на кривой принадлежат обычным кошелькам; значения вне кривой — это program-derived addresses (PDA). Solana-адреса не содержат контрольной суммы, поэтому проверка кривой — единственный доступный способ обнаружить опечатку.

Что говорит результат

Как работает проверка кривой

Публичный ключ ed25519 кодирует координату y точки кривой плюс один бит знака. Из y инструмент вычисляет x² = (y² − 1) / (d·y² + 1) по модулю 2²⁵⁵ − 19 и проверяет, есть ли у x² квадратный корень. Если есть, точка существует и у ключа может быть приватный ключ; если нет, адрес вне кривой. Арифметика выполняется в вашем браузере с помощью BigInt.

Типичные ошибки с Solana-адресами

  1. Потерян последний символ. Мессенджеры иногда обрезают длинные строки. Адрес из 43 символов вместо 44 декодируется в неправильную длину и не проходит проверку.
  2. Путаница между mint и кошельком. Адрес mint USDC EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v — корректный адрес, но отправка токенов на него их сжигает. Отправляйте только на адреса, которые человек назвал своим кошельком.
  3. Вставлен Ethereum-адрес. 0x… — это не Solana. Если не считать мостов, активы, отправленные в чужой формат, теряются.

Создайте код Solana Pay для проверенного адреса в генераторе QR-кода Solana Pay.

Часто задаваемые вопросы

Какой длины Solana-адрес?

Solana-адрес — это 32-байтовый публичный ключ ed25519 в кодировке Base58, что даёт от 32 до 44 символов, обычно 43 или 44. Используется алфавит Base58 из Bitcoin, поэтому символы 0, O, I и l никогда не встречаются.

Почему нет контрольной суммы?

В Solana выбрали сырые публичные ключи без байтов контрольной суммы, чтобы адреса были короче. Недостаток в том, что любое 32-байтовое значение выглядит корректным. Этот инструмент компенсирует это проверкой, лежит ли точка на кривой ed25519, — случайная опечатка не проходит её примерно в половине случаев.

Что такое program-derived address?

PDA — адрес, намеренно сгенерированный вне кривой, так что приватного ключа для него не существует; вместо этого им управляет программа. Ассоциированные токен-аккаунты, депозитные субаккаунты бирж и хранилища протоколов — это PDA. Отправлять SOL на такой адрес правильно только если владелец назвал вам именно его.

Отправлять USDC на адрес кошелька или на токен-аккаунт?

На адрес кошелька (ключ на кривой). Кошельки и биржи автоматически вычисляют ассоциированный токен-аккаунт. Отправка напрямую на адрес токен-аккаунта может сработать, но чревата ошибками.

Может ли он обнаружить адрес другой сети?

Да. Адреса Ethereum 0x, Tron T… и Bitcoin распознаются и помечаются как не относящиеся к Solana, когда выбрана сеть Solana.