

In computers, all data of different types are transmitted as 1s and 0s. With that deeper understanding of how it works, let's look at why would we Base64 encode our data. To Base64 encode a string, we convert it to binary sequences, then to decimal sequences, and finally, use a lookup table to get a string of ASCII characters. You can verify this result with an online converter. Continuing this lookup for all decimal values, we can determine that "Python" is represented as UHl0aG9u when Base64 encoded. Then we look at 7 and observe it's mapped to H. Using our last result, we get the following decimal values: 20 7 37 52 26 6 61 46Īs you can see, the value 20 corresponds to the letter U. With our data in groups of 6 bits, we can obtain the decimal value for each group.

If that occurs, we have to pad the sequence. Note: Sometimes we are not able to group the data into sequences of 6 bits. We now re-group the 8-bit binary sequences into chunks of 6 bits. Recall that Base64 characters only represent 6 bits of data. The ASCII values of the characters P, y, t, h, o, n are 15, 50, 45, 33, 40, 39 respectively. Let's see how it works by converting the string "Python" to a Base64 string.

What is Base64 Encoding?īase64 encoding is a type of conversion of bytes into ASCII characters. We will then use Python to Base64 encode and decode both text and binary data. In this tutorial, we would learn how Base64 encoding and decoding works, and how it can be used. By encoding our data, we improve the chances of it being processed correctly by various systems. Files with binary data, bytes that represent non-text information like images, can be easily corrupted when being transferred and processed to text-only systems.īase64 encoding allows us to convert bytes containing binary or text data to ASCII characters.
#Base64 decode image pdf
Have you ever received a PDF or an image file from someone via email, only to see strange characters when you open it? This can happen if your email server was only designed to handle text data.
