Base58: кодировщик и декодер

Кодируйте текст в Base58 или декодируйте Base58 в UTF-8-текст прямо в браузере. Доступны чистый Base58 и Base58Check с контрольной суммой; данные остаются на вашем устройстве.

Входные данные
0 симв. · 0 байт
Попробовать:
Результат
✓ Кодировка через большое целое число ✓ Адреса Bitcoin и других криптовалют ✓ Поддержка UTF-8 и Unicode ✓ Обработка выполняется локально в браузере
Примеры
Кодирование текста в Base58
Вариант: Base58 (чистый)
Вход Привет, мир!
Выход Dq4X7jF1qS7BzQ1RpXPpb4xayUP2x

Чистый Base58 для UTF-8-байтов текста.

Декодирование Base58 в текст
Вариант: Base58 (чистый)
Вход Dq4X7jF1qS7BzQ1RpXPpb4xayUP2x
Выход Привет, мир!

Декодер Base58 восстанавливает исходный UTF-8-текст.

Кодирование текста в Base58Check
Вариант: Base58Check (контрольная сумма)
Вход Привет
Выход 1SmBkbqWeDrPgq4ZhWD7Crk

Base58Check добавляет version-байт 0x00 и 4-байтную контрольную сумму перед кодированием UTF-8-текста.

Декодирование Base58Check
Вариант: Base58Check (контрольная сумма)
Вход 1SmBkbqWeDrPgq4ZhWD7Crk
Выход Привет

Перед возвратом исходного UTF-8-текста проверяется контрольная сумма.

Как работает кодирование Base58

Base58, также записываемый как Base 58, — это кодировка двоичных данных в текст: она представляет байты как большое число в системе счисления с основанием 58. В алфавите Bitcoin намеренно нет легко различимых символов 0, O, I и l. Поэтому строку Base58 удобнее читать, копировать и переписывать вручную, чем кодировки, где эти символы встречаются.

В отличие от Base32 или Base64, Base58 не разбивает данные на группы бит фиксированного размера. Вся последовательность байтов рассматривается как одно большое целое число, последовательно делится на 58, а остатки сопоставляются с символами алфавита Base58. Ведущие нулевые байты сохраняются в виде ведущих символов 1.

Этот декодер Base58 преобразует UTF-8-байты введённого текста. Выберите Base58 (чистый) для прямого кодирования текста в Base58 или Base58Check для варианта с контрольной суммой. Можно декодировать Base58 в текст и выполнить обратное кодирование ASCII- или UTF-8-текста; обработка происходит локально в браузере и не отправляет данные на сервер.

Base58Check, P2PKH и P2SH

Base58Check сначала добавляет к полезным данным version-байт, затем перед кодированием в Base58 дописывает первые четыре байта двойного SHA-256 в качестве контрольной суммы. При декодировании инструмент проверяет эту сумму и отклоняет значение, если она не совпадает. Контрольная сумма помогает заметить случайную ошибку, но не шифрует данные и не подтверждает, кто их создал.

В Bitcoin Base58Check обычно используется для представления устаревших адресов P2PKH и P2SH. Это типы адресов, а не разные алфавиты Base58. Страница предназначена для преобразования текста: её вариант Base58Check всегда использует version-байт 0x00 и возвращает полезные данные как UTF-8-текст. Поэтому не используйте её для создания, определения типа или проверки произвольных криптовалютных адресов, кошельков, транзакций и приватных ключей.

FAQ

Перед кодированием в Base58Check добавляет version-байт в начало и 4-байтную контрольную сумму — первые четыре байта двойного SHA-256 — в конец. Контрольная сумма позволяет программе отклонить значение с опечаткой. Этот формат используется в адресах Bitcoin и приватных ключах WIF.

Цифра 0, заглавные O и I, а также строчная l исключены, потому что во многих шрифтах их легко перепутать. Это снижает вероятность ошибки, когда адрес или другую строку переписывают вручную.

Нет. Base58 — кодировка, а не шифрование и не хеширование. Любой человек может декодировать строку Base58, если знает, что она содержит текст или байты. Не используйте Base58 для защиты паролей, секретов или приватных ключей.

Чистый Base58 напрямую представляет входные байты. Base58Check добавляет version-байт и 4-байтную контрольную сумму double SHA-256 перед кодированием, поэтому при декодировании можно обнаружить неверное или ошибочно введённое значение. Для кодирования и декодирования выбирайте один и тот же вариант.

Инструмент умеет проверять и декодировать только собственный текстовый формат Base58Check: он использует version-байт 0x00 и ожидает UTF-8-текст в полезных данных. P2PKH и P2SH — форматы адресов Bitcoin с version-байтами, зависящими от сети и типа адреса, поэтому этот сервис не является валидатором адресов или инструментом для кошелька.

В чистой строке Base58 может встретиться символ вне алфавита, например 0, O, I или l. В Base58Check декодирование также не выполняется, если не совпадает контрольная сумма. Пробелы игнорируются, но остальные символы и выбранный вариант должны быть верными.
Связанные инструменты

ASCII-конвертер

Преобразуйте ASCII-символы и числовые коды для работы с протоколами и парсерами.

JWT-декодер онлайн

Декодируйте JWT в браузере и просматривайте header, payload, claims и срок действия токена.