Perché usare un codificatore Base64?
Base64 rappresenta dati binari come testo ASCII. È essenziale per trasportare file, immagini o dati in formati che accettano solo testo (JSON, XML, email, URL).
Tre casi d'uso comuni:
- API e webhook → Codificare payload o decodificare risposte Base64
- Autenticazione HTTP → Verificare o creare un header
Authorization: Basic - Email e MIME → Decodificare allegati codificati in Base64
Come usare il codificatore/decodificatore in 3 passaggi
Passaggio 1: Incolla il contenuto
Incolla il testo da codificare o la stringa Base64 da decodificare nell'area di input.
Per codificare:
user:password
Per decodificare:
dXNlcjpwYXNzd29yZA==
Passaggio 2: Scegli l'operazione
- Codifica in Base64: Trasforma testo leggibile in Base64
- Decodifica Base64: Recupera il contenuto originale
Passaggio 3: Copia il risultato
Il risultato viene mostrato istantaneamente. Per file binari decodificati, salva il contenuto con l'estensione corretta (.png, .pdf, ecc.).
Cos'è Base64?
Base64 è una codifica che rappresenta byte usando 64 caratteri: A-Z, a-z, 0-9, + e /. Il segno = è padding quando la lunghezza non è multiplo di 3.
Caratteristiche:
- La dimensione aumenta di circa il 33% dopo la codifica
- Il risultato contiene solo caratteri ASCII stampabili
- NON è crittografia - i dati rimangono leggibili
Esempio di codifica:
Testo: "Ciao"
Base64: "Q2lhbw=="
Varianti Base64
| Variante | Caratteri | Utilizzo |
|---|---|---|
| Standard | A-Z, a-z, 0-9, +, / | Email (MIME), certificati, dati generali |
| URL-safe | A-Z, a-z, 0-9, -, _ | URL, JSON, token JWT |
| MIME | Standard + ritorni a capo | Email (76 caratteri per riga) |
Esempi di utilizzo
Autenticazione HTTP Basic
L'header Authorization: Basic richiede credenziali codificate in Base64:
Credenziali: admin:secret123
Base64: YWRtaW46c2VjcmV0MTIz
Header: Authorization: Basic YWRtaW46c2VjcmV0MTIz
Data URL per immagini
Incorporare una piccola immagine direttamente in HTML/CSS:
data:image/png;base64,iVBORw0KGgo...
Allegati MIME
Le email codificano gli allegati in Base64:
Content-Transfer-Encoding: base64
SGVsbG8gV29ybGQh...
Risoluzione errori comuni
| Problema | Causa probabile | Soluzione |
|---|---|---|
| Decodifica fallisce | Stringa URL-safe | Sostituisci - con + e _ con / |
| Padding mancante | Formato incompleto | Aggiungi = fino a lunghezza multipla di 4 |
| Risultato illeggibile | Dati binari | Salva in file con estensione corretta |
| Doppia codifica | Codificato due volte | Decodifica una seconda volta |
Migliori pratiche
- UTF-8: Usa sempre UTF-8 per il testo prima della codifica
- Niente segreti in chiaro: Base64 non è crittografia
- Data URL: Limita a pochi KB per evitare pagine pesanti
- Validazione: Verifica il formato (standard vs URL-safe) prima di decodificare
FAQ - Domande frequenti
D: Base64 protegge i miei dati?
R: No. Base64 è codifica reversibile, non crittografia. Chiunque può decodificare i tuoi dati. Non memorizzare mai segreti senza crittografia preventiva.
D: Perché la dimensione aumenta?
R: Base64 rappresenta 3 byte con 4 caratteri. La dimensione aumenta quindi di circa il 33%. È il costo della compatibilità con il testo.
D: Come decodifico un JWT?
R: Un JWT contiene 3 parti separate da punti: header.payload.signature. Puoi decodificare header e payload individualmente (sono Base64 URL-safe).
Strumenti complementari
| Strumento | Utilità |
|---|---|
| Convertitore maiuscole/minuscole | Convertire testo in maiuscolo o minuscolo |
| Generatore di slug | Trasformare un titolo in URL pulito |
| Contatore parole | Contare parole e caratteri di un testo |
Risorse utili
- RFC 4648 - Base Encodings (specifica ufficiale Base64)
- MDN - btoa() e atob() (funzioni JavaScript native)
Impegno sulla privacy
Il tuo input viene inviato all'API CaptainDNS esclusivamente per codifica o decodifica. Il contenuto non viene conservato. Vengono registrate solo metriche tecniche anonime (tempo di elaborazione, dimensione input).