Base64 encoding

December 2016

Base64 encoding

The concept of Base64 encoding entails using US-ASCII (non-accented) characters to encode any sort of data in 8-bit form.

Email protocols were originally designed to send messages in plain text only. But as email systems vary greatly, transferring binary data often ends up changing the message's content, rendering the original document unreadable.

Base64 format, widely used in sending and receiving email, can transmit any kind of binary document (like an application, a video, or an audio file) as an attachment to an email, by encoding it in the form of basic characters.

Base64 encoding is responsible for an overall 33% increase in the volume of all encoded data.

Concept of Base64 encoding

The concept of Base64 encoding involves using 4 printable characters (in US-ASCII format) to encode any 3 bytes (3*8 bits = 24 bits).

Base64 encoding uses an alphabet of 64 printable characters to represent 6 bits of data. This alphabet's 64 symbols have been chosen for being universally readable, and for having no special meaning in the main email protocols (in particular SMTP).

ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwkyz
123456789+/.

Reading the binary data from left to right, groups of 24 bits are created by concatenating blocks of three bytes of data each. Each 24-bit group is then divided into 4 groups of 6 bits, with each one corresponding to 4 characters of the Base64 alphabet.

Base64 encoding is used for data which forms a multiple of 24 bits. If the amount of data to be encoded is not a multiple of 24 bits, the resulting Base64 string must end with between 0 to 3 equal signs ("=") in order to reach a multiple of 24. This 65th character may only be used at the end of the encoded data.

To ensure compatibility with all email systems, Base64 data is formatted with carriage returns, so that no line is longer than 76 characters.


Related :


Codificación Base 64
Codificación Base 64
Base64 Kodierung
Base64 Kodierung
Codage Base64
Codage Base64
Codifica Base64
Codifica Base64
Codificação Base64
Codificação Base64
This document entitled « Base64 encoding » from CCM (ccm.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the license, as this note appears clearly.