The Base64Encoder encodes bytes into base 64 characters. The partner decoder is a Base64Decoder. The character set differs from a Base64URLEncoder by using the plus (+) and forward slash (/) characters. The alphabet is specified in RFC 4648, The Base16, Base32, and Base64 Data Encodings.
The Base64URLEncoder encodes bytes into URL or filename safe character strings. The class is also helpful for web technologies, like JSON and JSON Web Keys (JWK). The partner decoder is a Base64URLDecoder. The character set differs from a Base64Encoder by using the minus (-) and underscore (_) characters.
The Base64URLEncoder takes a pointer to a BufferedTransformation. Because a pointer is taken, the Base64URLEncoder owns the attached transformation, and therefore will destroy it.
Base64 is a group of similar binary-to-text encoding schemes that represent binary data in an ASCII string format by translating it into a radix-64 representation. The term Base64 originates from a specific MIME content transfer encoding.
Each base64 digit needs exactly 6 bits of information to be represented.