Base64 si riferisce ad una specifica codifica per il trasferimento di contenuto MIME. La codifica Base64 rappresenta sequenze arbitrarie di ottetti in un formato che richiede il rispetto delle lettere maiuscole e minuscole ma non deve necessariamente essere leggibile.
Viene utilizzato un sottoinsieme composto da 65 caratteri US-ASCII, che consente la rappresentazione di 6 bit per carattere stampabile. Il 65° carattere, "=", viene utilizzato per indicare una speciale funzione di elaborazione.
Il processo di codifica rappresenta gruppi di 24 bit di bit di input come stringhe di output di 4 caratteri codificati. Andando da sinistra a destra, un gruppo di input di 24 bit viene formato concatenando 3 gruppi di input da 8 bit. Questi 24 bit vengono, quindi, considerati come 4 gruppi da 6 bit concatenati, ognuno dei quali viene convertito in una singola cifre nell'alfabeto base 64.
Ogni gruppo da 6 bit viene utilizzato come indice in una matrice di 64 caratteri stampabili. Il carattere a cui l'indice fa riferimento viene inserito nella stringa di output.
Alfabeto Base64
Codifica valore Codifica valore Codifica valore Codifica valore 0 A 17 R 34 i 51 z 1 B 18 S 35 j 52 0 2 C 19 T 36 k 53 1 3 D 20 U 37 l 54 2 4 E 21 V 38 m 55 3 5 F 22 W 39 n 56 4 6 G 23 X 40 o 57 5 7 H 24 Y 41 p 58 6 8 I 25 Z 42 q 59 7 9 J 26 a 43 r 60 8 10 K 27 b 44 s 61 9 11 L 28 c 45 t 62 + 12 M 29 d 46 u 63 / 13 N 30 e 47 v 14 O 31 f 48 w (riempimento) = 15 P 32 g 49 x 16 Q 33 h 50 y