Codifica e decodifica Base64
Codifica e decodifica Base64 gratis, con pieno supporto UTF-8 e opzione base64url sicura per URL. Funziona tutto nel browser, nulla viene caricato.
Come usare il codificatore e decodificatore Base64
- Scegli se vuoi Codifica (da testo a Base64) oppure Decodifica (da Base64 a testo).
- Scrivi o incolla il tuo input nella casella di testo. Lettere accentate, alfabeti non latini ed emoji sono tutti supportati.
- Se il risultato finirà in un URL, in un nome di file o in un JSON Web Token, attiva l’opzione Sicuro per URL (base64url) per ottenere la variante base64url.
- Leggi il risultato e copialo. Se stai decodificando e l’input non è Base64 valido, un messaggio di errore te lo segnala invece di produrre caratteri senza senso.
Che cos’è Base64?
Base64 è un modo per rappresentare byte qualsiasi usando soltanto 64 caratteri ASCII stampabili: le lettere maiuscole A–Z, le minuscole a–z, le cifre 0–9 e i due simboli + e /. Il carattere = serve come riempimento (padding) alla fine. Esiste perché molti sistemi sono stati progettati per trasportare testo, non dati binari grezzi. Il corpo delle email, gli header HTTP, i documenti XML e JSON e i data URL si aspettano caratteri che sopravvivano a copie, log e trasmissioni senza venire alterati.
L’algoritmo lavora su gruppi di tre byte (24 bit) e li divide in quattro valori da 6 bit, ognuno dei quali corrisponde a uno dei 64 caratteri. Ecco perché l’output Base64 è sempre circa il 33 % più grande dell’input: ogni 3 byte diventano 4 caratteri. Quando la lunghezza dell’input non è un multiplo di tre, si aggiungono uno o due segni = in modo che la lunghezza dell’output sia un multiplo di quattro. Per esempio, la parola Hi diventa SGk= e Hello diventa SGVsbG8=.
Testo, byte e UTF-8
Base64 codifica byte, non caratteri, quindi il testo va prima trasformato in byte. Questo strumento usa UTF-8, la codifica di quasi tutte le pagine web e le API moderne. Così café diventa Y2Fmw6k= e un’emoji come 👍 (quattro byte in UTF-8) viene codificata correttamente e decodificata di nuovo nella stessa emoji. Molti script veloci basati sulla vecchia funzione btoa() del browser falliscono con tutto ciò che esce dal Latin-1; questo strumento non ha questo limite.
Base64 standard e base64url
Il Base64 standard usa + e /, che hanno un significato speciale negli URL e nei percorsi dei file. La variante sicura per URL, chiamata base64url, sostituisce + con - e / con _, e di solito elimina il padding =. È il formato usato nei JSON Web Token (JWT), in molti parametri OAuth e negli accorciatori di URL. Attiva l’opzione quando ti serve questo formato e lasciala disattivata per allegati email, data URL o file di configurazione che si aspettano il Base64 standard.
Base64 non è crittografia
È l’equivoco più diffuso in assoluto. Base64 è una codifica: non ha chiavi né segreti, e chiunque può invertirla all’istante. Codificare in Base64 una password, una chiave API o dati personali non li protegge in alcun modo. L’autenticazione HTTP Basic, per esempio, invia username:password in Base64, ed è per questo che va usata solo su HTTPS. Se ti serve riservatezza, usa una vera crittografia (come AES) o un hash per password (come Argon2 o bcrypt), non Base64.
Privacy
Codifica e decodifica avvengono localmente nel tuo browser con JavaScript. Il testo che inserisci non viene mai inviato a un server, salvato o registrato, quindi puoi ispezionare token o valori di configurazione in tutta tranquillità. Lo strumento lavora solo su testo e non accetta il caricamento di file.
Domande frequenti
Perché il testo decodificato sembra una serie di simboli casuali?
Probabilmente la stringa Base64 rappresenta dati binari, come un’immagine, un file compresso o contenuto cifrato, e non testo. La decodifica produce byte validi, ma non sono testo UTF-8 sensato. Può succedere anche se il testo originale era stato codificato con un set di caratteri diverso da UTF-8.
Perché lo strumento dice che il mio Base64 non è valido?
Un Base64 valido contiene solo i 64 caratteri ammessi più l’eventuale padding =, e la sua lunghezza deve rispettare i gruppi da 4 caratteri. Le cause tipiche sono caratteri estranei copiati per sbaglio, una stringa troncata, oppure una stringa base64url (con - e _) decodificata senza attivare l’opzione Sicuro per URL (base64url).
Posso codificare immagini o altri file?
No. Questo strumento è pensato solo per il testo. Per incorporare un’immagine in HTML o CSS ti serve uno strumento che legga i byte grezzi del file e generi un data URL.
Base64 va bene per salvare le password?
No. Chiunque può decodificare Base64 in una frazione di secondo. Le password vanno salvate con un algoritmo di hashing lento e dedicato, come Argon2, scrypt o bcrypt.
Che differenza c'è tra Base64 con e senza padding?
Il padding con = serve solo a rendere la lunghezza dell’output un multiplo di quattro: non contiene informazioni. La maggior parte dei decodificatori ricostruisce i dati anche senza. base64url spesso lo omette perché = è a sua volta un carattere riservato negli URL.
Strumenti correlati
- Codifica e decodifica URL Codificatore e decodificatore URL gratuito. Codifica parametri o URL completi, decodifica le sequenze %XX e gestisci + come spazio, tutto nel browser.
- Formattatore e validatore JSON Formattatore e validatore JSON gratuito che formatta, minifica e controlla il JSON nel browser, con gli errori di sintassi indicati per riga e colonna.
- Generatore di UUID Generatore di UUID versione 4 e 7 gratuito. Crea fino a 1.000 UUID alla volta, in maiuscolo o senza trattini, poi copiali o scaricali in .txt.