Откройте конвертер, выберите Кодировать, обычный Base64 и Padded, затем введите точно Hello, мир 🌍 без перевода строки. Исходник содержит 13 UTF-16 единиц, но превращается в 18 байтов UTF-8: кириллица и emoji занимают несколько байтов. Base64Lens показывает байты и канонический результат.
Точные байты UTF-8
Ожидаемый hex: 48 65 6C 6C 6F 2C 20 D0 BC D0 B8 D1 80 20 F0 9F 8C 8D. ASCII занимает по байту, каждая кириллическая буква — по два, emoji — четыре. Поэтому число видимых символов не определяет длину Base64.
В результате нет знаков равенства
Точный Base64: SGVsbG8sINC80LjRgCDwn4yN. Восемнадцать байтов образуют шесть полных троек, поэтому padded и unpadded результаты совпадают. Это не означает, что padding проигнорирован: при другом числе байтов выбор проявится в конце.
Декодируйте обратно без нормализации
Переключитесь на Декодировать с тем же алфавитом и padded-правилом, вставьте результат и подтвердите точный исходный текст. Сравните пробелы, запятую, кириллицу и emoji. Base64Lens не нормализует Unicode и не меняет строки, поэтому любой лишний символ изменит байты и результат.