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