La codifica Base64 spiegata: cos'è e quando usarla
Aggiornato 2026-07-06
Base64 è uno di quei termini che compaiono di continuo — nei data URI, negli allegati email, nei token API e nei file di configurazione — ma raramente viene spiegato con chiarezza. Spesso lo si confonde con la crittografia, il che porta a veri errori di sicurezza. Questa guida spiega cosa fa davvero il Base64, perché ingrandisce i dati, dove è genuinamente utile e i miti da disimparare.
Cos'è Base64
Base64 è una codifica, non crittografia né compressione. Il suo compito è rappresentare dati binari arbitrari — un'immagine, un file, qualsiasi sequenza di byte — usando solo 64 caratteri di testo «sicuri»: A–Z, a–z, 0–9, più + e / (con = per il riempimento). Ognuno di questi caratteri sopravvive ai sistemi costruiti per gestire testo semplice, che è la ragione stessa per cui Base64 esiste.
Perché serve
Molti sistemi vecchi ma ancora fondamentali — l'email è l'esempio classico — sono stati progettati per muovere testo, non binario grezzo. Inviarci binario direttamente può corrompere i dati: certi valori di byte vengono interpretati come caratteri di controllo, rimossi o storpiati. Base64 aggira il problema traducendo il binario in una forma testuale che passa intatta, e ritraducendolo dall'altra parte.
Concettualmente, l'andata e ritorno è così:
dati binari → testo Base64 → dati binari (originale) (sicuro da inviare) (copia identica)
Perché Base64 ingrandisce i dati di ~33%
Non esistono pasti gratis. Base64 prende tre byte (24 bit) in ingresso e li divide in quattro gruppi da 6 bit, ciascuno mappato a uno dei 64 caratteri. Tre byte dentro, quattro caratteri fuori — quindi l'output codificato è circa un terzo più grande dell'originale. Questo sovraccarico è il prezzo per rendere il binario sicuro da trasmettere come testo, ed è il motivo per cui non dovresti codificare file grandi in Base64 senza una buona ragione.
Dove lo vedrai davvero
Data URI
Puoi incorporare una piccola immagine direttamente in HTML o CSS come data URI in Base64, evitando una richiesta di rete separata:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUh..." />
Comodo per icone minuscole, ma per la penalità del 33% sulla dimensione è una pessima scelta per qualsiasi cosa grande.
Allegati email
Dietro le quinte, gli allegati email vengono codificati in Base64 affinché i file binari attraversino intatti il sistema email basato su testo.
Token e configurazione
Token e credenziali sono spesso codificati in Base64 per stare in sicurezza dentro header, URL o file di configurazione di testo. Un JWT (JSON Web Token), per esempio, è fatto di tre sezioni codificate in Base64 unite da punti — ed è esattamente per questo che un decoder JWT può leggerne il contenuto all'istante.
Il mito della sicurezza
Questa è la cosa più importante da capire: Base64 non è crittografia e non offre alcuna sicurezza. Non c'è chiave né segreto — chiunque può decodificare il Base64 nei dati originali in una frazione di secondo. Se vedi una password o una chiave API «protetta» solo dal Base64, trattala come se fosse in chiaro, perché di fatto lo è.
Base64 risponde alla domanda «come sposto questi dati in sicurezza attraverso un canale testuale?» — non «come tengo segreti questi dati?». Per la segretezza serve vera crittografia. È comune combinare i due: prima cifra, poi codifica in Base64 il risultato cifrato così da poterlo trasmettere come testo.
Base64 e le URL
Il Base64 standard usa + e /, che hanno significati speciali nelle URL e possono corrompersi se passati come parametri di query. Una variante chiamata Base64URL li sostituisce con - e _ e omette il riempimento, rendendo l'output sicuro da inserire direttamente in una URL. Se stai lottando anche con caratteri come spazi o e commerciali in una URL, quello è compito della codifica URL — uno strumento diverso per un problema diverso.
Codificarlo e decodificarlo da sé
Raramente devi fare Base64 a mano, ma spesso devi ispezionarlo o produrlo — leggere un data URI, controllare cosa c'è dentro un token o creare un'immagine incorporata. Il nostro codificatore e decodificatore Base64 converte il testo in entrambe le direzioni all'istante e interamente nel tuo browser, così anche i valori sensibili non lasciano mai il dispositivo. Incolla Base64 per vedere l'originale, o incolla testo per ottenere la forma codificata.
Il riassunto in una riga
Base64 trasforma il binario in testo sicuro e viceversa, al costo di circa il 33% in più di dimensione, e offre zero segretezza. Usalo per trasportare i dati, mai per proteggerli.
Altro su Formati di dati & codifica
Vedi tutte le guide di Formati di dati & codifica →Strumenti citati in questa guida