1-Tidak
2- Sebagai jawaban singkat: Karakter ke-65 ("=" tanda) hanya digunakan sebagai pelengkap dalam proses akhir penyandian pesan.
Anda tidak akan memiliki tanda '=' jika string Anda memiliki kelipatan angka 3 karakter, karena Base64
pengodean mengambil masing-masing tiga byte (8bits) dan mewakili mereka sebagai empat karakter yang dapat dicetak dalam standar ASCII.
Detail:
(Sebuah) Jika Anda ingin menyandikan
ABCDEFG <=> [ ABC
] [ DEF
] [G
Base64
akan menangani (menghasilkan 4 karakter) dengan blok pertama dan yang kedua (setelah selesai) tetapi untuk yang ketiga akan menambahkan dua kali lipat ==
dalam output untuk menyelesaikan 4 karakter yang diperlukan. Jadi, hasilnya akan QUJD REVG Rw == (tanpa spasi)
(b) Jika Anda ingin menyandikan ...
ABCDEFGH <=> [ ABC
] [DEF
] []GH
Demikian pula, itu akan menambahkan hanya satu =
di akhir output untuk mendapatkan 4 karakter hasilnya akan QUJD REVG R0g = (tanpa spasi)