1-Không
2- Như một câu trả lời ngắn: Ký tự thứ 65 (dấu "=") chỉ được sử dụng như một phần bổ sung trong quá trình mã hóa tin nhắn cuối cùng.
Bạn sẽ không có dấu '=' nếu chuỗi của bạn có nhiều số có 3 ký tự, bởi vì Base64
mã hóa lấy mỗi ba byte (8 bit) và biểu thị chúng là bốn ký tự có thể in được trong tiêu chuẩn ASCII.
Chi tiết :
(a) Nếu bạn muốn mã hóa
ABCDEFG <=> [ ABC
] [ DEF
] [G
Base64
sẽ đối phó (tạo ra 4 ký tự) với khối thứ nhất và khối thứ hai (khi chúng hoàn thành) nhưng đối với khối thứ ba, nó sẽ tăng gấp đôi ==
trong đầu ra để hoàn thành 4 ký tự cần thiết. Vì vậy, kết quả sẽ là QUJD REVG Rw == (không có không gian)
(b) Nếu bạn muốn mã hóa ...
ABCDEFGH <=> [ ABC
] [ DEF
] [GH
Tương tự, nó sẽ chỉ thêm một ký tự =
ở cuối đầu ra để có 4 ký tự, kết quả sẽ là QUJD REVG R0g = (không có khoảng trắng )