Кодирование и декодирование Base58
Кодируйте текст в Base58 с помощью биткойн-алфавита и декодируйте его обратно.
Кодирование и декодирование Base58
Base58 превращает данные в компактную строку, состоящую из 58 выбранных символов — алфавита Биткойна 123456789, A–Z и a–z с намеренно опущенными 0, O, I и l. Эти четыре символа люди путают, читая значение вслух, копируя его с бумаги или щурясь на шрифт, где 0 выглядит как O, а l выглядит как I. Это делает Base58 предпочтительной кодировкой везде, где человеку может потребоваться расшифровать результат: адреса биткойнов, хэши контента IPFS и сервисы коротких идентификаторов, такие как Flickr, которые используют в URL-адресах.
Выберите направление и вставьте текст. Кодирование берет входные байты UTF-8 и преобразует их в Base58, при этом ведущие нулевые байты становятся ведущими 1 символами, точно так, как это определяет Биткойн. Декодирование обращает процесс и преобразует байты обратно в текст; Пробелы и разрывы строк во вставленном значении игнорируются, а первый символ вне алфавита упоминается в ошибке, поэтому случайный 0 или O обнаруживается немедленно.
Встроены два честных ограничения. Декодированные биткойн-адреса и хэши контента являются двоичными, а не текстовыми — если декодированные байты не являются допустимыми UTF-8, инструмент сообщает об этом вместо вывода мусора. А поскольку в Base58 нет размера блока с выравниванием по байтам, стоимость преобразования резко возрастает с увеличением размера, поэтому входные данные ограничиваются 100 КБ с четким сообщением, а не с замороженной вкладкой.
В отличие от Base64, Base58 также отбрасывает + и /, что обеспечивает безопасность значений внутри URL-адресов без дополнительного экранирования. Все работает в вашем браузере — ничего из того, что вы вставляете, никуда не загружается. Скопируйте результат или загрузите его в виде файла .txt.