1-Нет
2- В качестве краткого ответа:
65-й символ (знак "=") используется только в качестве дополнения в конечном процессе кодирования сообщения.
У вас не будет знака '=', если ваша строка имеет кратное число из 3 символов, потому что кодировка Base64
занимает каждый три байта (8 бит) и представляет их как four печатаемых символов в стандарте ASCII.
Подробности:
(a) Если вы хотите закодировать
ABCDEFG <=> [ABC
] [DEF
] [G
Base64
будет иметь дело (производя 4 символа) с первым блоком и вторым (по мере их завершения), но для третьего он добавит двойной ==
в вывод для того, чтобы завершите 4 необходимых символа. Таким образом, результат будет QUJD REVG Rw == (без пробела)
(b) Если вы хотите кодировать ...
ABCDEFGH <=> [ABC
] [DEF
] [GH
Точно так же он добавит только один =
в конце вывода, чтобы получить 4 символа
результат будет QUJD REVG R0g = (без пробела)