Что такое SS58-адрес?
SS58 — формат адресов Polkadot, Kusama и всех сетей на базе Substrate: сетевой префикс, 32-байтовый публичный ключ (account ID) и 2-байтовая контрольная сумма в кодировке Base58. Формат описан в вики Polkadot, а префиксы назначаются в реестре SS58. Конвертер SS58-адресов декодирует строку, проверяет контрольную сумму, извлекает публичный ключ и перекодирует его для других префиксов.
Как работает кодирование SS58
- Байты префикса. Префиксы 0–63 занимают один байт. Более крупные префиксы (до 16383) занимают два байта в упакованном виде: первый байт содержит биты 2–7 префикса плюс маркер 0b01, второй — биты 8–13 и биты 0–1.
- Контрольная сумма. BLAKE2b-512 вычисляется над
SS58PRE+ байты префикса + публичный ключ, и первые два байта дайджеста добавляются в конец. - Base58. Весь буфер (1 или 2 + 32 + 2 байта) кодируется в Base58 с алфавитом Bitcoin. Префикс 0 всегда даёт адрес, начинающийся с 1, префикс 2 — с заглавной буквы от C до J, префикс 42 — с 5.
Пример
У известного dev-аккаунта Alice публичный ключ 0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d. С префиксом 0 он кодируется в 15oF4uVJwmo4TdGW7VfQxNLavjCXviqxT9S1MgbjMNHr6Sp5 (Polkadot), с префиксом 2 — в HNZata7iMYWmk5RvZRTiAsSDhV8366zq2YGb3tLH5Upf74F (Kusama), а с префиксом 42 — в 5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY (универсальный Substrate). Вставьте любой из них выше, чтобы увидеть все три и ещё четырнадцать.
Префиксы и первые символы
| Префикс | Сеть | Адрес начинается с | Префикс | Сеть | Адрес начинается с |
|---|---|---|---|---|---|
| 0 | Polkadot | 1 | 36 | Centrifuge | 4 |
| 2 | Kusama | C, D, E, F, G, H, J | 38 | KILT | 4 |
| 5 | Astar | V, W, X, Y, Z, a, b | 42 | Substrate (универсальный) | 5 |
| 6 | Bifrost | b, c, d, e, f, g, h | 63 | Hydration | 7 |
| 7 | Edgeware | h, i, j, k, m, n, o | 73 | Zeitgeist | dD, dE |
| 8 | Karura | o, p, q, r, s, t, u | 2032 | Interlay | wd |
| 10 | Acala | 2, z | 2092 | Kintsugi | a3 |
| 12 | Polymesh | 2 | 10041 | Basilisk | bX |
| 30 | Phala | 3, 4 |
Первые символы — побочный эффект Base58 и значения префикса; это быстрая визуальная подсказка, а не гарантия. Всегда полагайтесь на декодированный префикс, который показывает инструмент.
Почему важна контрольная сумма
В Base58 нет встроенного обнаружения ошибок, поэтому SS58 добавляет двухбайтовую контрольную сумму BLAKE2b, которая ловит любую одиночную опечатку и подавляющее большинство многосимвольных ошибок. Кошельков или бирж, принимающих адрес с неверной контрольной суммой, на практике не существует; этот инструмент тоже отклоняет его и сообщает, что контрольная сумма не сошлась, а не угадывает. Обратите внимание: контрольная сумма включает префикс, поэтому адрес Kusama отклоняется как невалидный адрес Polkadot, хотя ключ внутри тот же: отправитель должен перекодировать его, а не перепечатать.
Типичные применения
- Поиск своего адреса Kusama, Astar или Hydration по адресу Polkadot, который показывает аппаратный кошелёк, отображающий только одну сеть.
- Получение hex account ID для вызовов Polkadot.js API, настройки мультисига или аккаунтов назначения XCM.
- Проверка по декодированному префиксу, что депозитный адрес биржи действительно относится к той сети, в которой вы собираетесь отправлять.
Только публичные ключи и адреса: эта страница никогда не запрашивает сид-фразу или приватный ключ, и ничто из вставленного не покидает ваш браузер. Для других форматов см. валидатор крипто-адресов.