Base64 Decoder
Base64 Decoder is used to decode base 64 encoded data back to its original non-encoded form. Our decode64 also supports decoding binary content. The following file types are supported - Images (PNG, GIF, JPEG), PDF, Zip. Send us a feedback if you want support for other file types.
All processing happens on the client-side, locally in your browser. No data is uploaded.
Settings
How the input is converted. Each is explained below.
History
- 2021-10-11Support for source character set
- 2017-10-18Support for binary data
- 2017-10-01Released
Settings explained
- Source encoding
Specify the character set of the source data, applied after base64 decoding is complete. The default is UTF-8. A decoded image, PDF, ZIP or MP3 is offered as a file to download instead.
About Base64
We use Base64 encoding to represent binary data in ASCII characters. It consists of 64 characters, including letters, numbers, and two symbols plus (+) and slash (/). Additionally, the equals sign (=) is the pad character at the end. The typical usage is to embed image data within scripts such as CSS. The cool thing about Base64 is that most programming languages support it natively using built-in APIs. You can decode and encode binary data without importing any external libraries.
In C#, the ToBase64String method of System.Convert class does this. This method takes a byte array as input and returns the result in ASCII string format. Typically, this is some binary data that we cannot transfer over the wire without corruption. However, you can also convert text into byte[] and then encode it using base64. One must question why this is needed because it is not the intended use of the Base-64 encoding scheme. In this form, you are just wasting bytes to represent your text data. Use Base64 strings if you want to perform binary to text encoding and transmit your data safely.
Check out the Programming languages section below for a list of APIs for other languages. Read more at Wikipedia.
How to do Base64 encoding and decoding in various programming languages
| Language | Encode | Decode | Example | Documentation |
|---|---|---|---|---|
| C# | System.Convert.ToBase64String() | System.Convert.FromBase64String() | Example | Documentation |
| VB .NET | System.Convert.ToBase64String() | System.Convert.FromBase64String() | Example | Documentation |
| Java 8+ | java.util.Base64.getEncoder().encode() | java.util.Base64.getDecoder().decode() | Example | Documentation |
| Java 7 or less | org.apache.commons.codec.binary.Base64.encodeBase64() | org.apache.commons.codec.binary.Base64.decodeBase64() | Example | Documentation |
| JavaScript | btoa() | atob() | btoa()atob() | Documentation |
| Python | base64.b64encode() | base64.b64decode() | Example | Documentation |
| Ruby | Base64.encode64() | Base64.decode64() | Example | Documentation |
Example substitutions
Each 6-bit value and the character it is written as.
- 0
A - 1
B - 2
C - 3
D - 4
E - 5
F - 6
G - 7
H - 8
I - 9
J - 10
K - 11
L - 12
M - 13
N - 14
O - 15
P - 16
Q - 17
R - 18
S - 19
T - 20
U - 21
V - 22
W - 23
X - 24
Y - 25
Z - 26
a - 27
b - 28
c - 29
d - 30
e - 31
f - 32
g - 33
h - 34
i - 35
j - 36
k - 37
l - 38
m - 39
n - 40
o - 41
p - 42
q - 43
r - 44
s - 45
t - 46
u - 47
v - 48
w - 49
x - 50
y - 51
z - 52
0 - 53
1 - 54
2 - 55
3 - 56
4 - 57
5 - 58
6 - 59
7 - 60
8 - 61
9 - 62
+ - 63
/ - pad
=