Codifica un testo o un file in Base64, oppure incolla del Base64 per decodificarlo. Accenti ed emoji funzionano, e niente lascia il tuo browser.
Fino a 5 MB. Il file resta sul tuo dispositivo.
Funziona nel tuo browser. Niente di ciò che inserisci viene inviato a un server.
Come funziona
Codifica. Il testo viene prima convertito in byte UTF-8, quindi sono supportate tutte le lingue e le emoji. Poi i byte vengono letti tre alla volta (24 bit), divisi in quattro gruppi da 6 bit, e ogni gruppo viene scritto come uno dei 64 caratteri. Se l’input non è un multiplo di tre byte, l’output viene completato con =.
Decodifica. Spazi e a capo vengono ignorati, il riempimento mancante viene aggiunto e il prefisso data:…;base64, viene rimosso, quindi puoi incollare il Base64 direttamente da un’email, da un file PEM o da un tag immagine HTML. Se i byte decodificati non sono testo valido (per esempio un’immagine), lo strumento te lo dice e ti permette di scaricarli come file.
I file vengono codificati byte per byte. Seleziona “Come URL data:” per ottenere una stringa da mettere direttamente in un <img src> o in un url() CSS.
Esempi
Testo
Base64
foobar
Zm9vYmFy
foob
Zm9vYg==
café
Y2Fmw6k=
😀
8J+YgA==
subjects?_d
c3ViamVjdHM/X2Q= (sicuro per URL: c3ViamVjdHM_X2Q)
new TextDecoder().decode(Uint8Array.from(atob(b), c => c.charCodeAt(0)))
Node.js
Buffer.from(s).toString('base64')
Buffer.from(b, 'base64').toString()
Python
base64.b64encode(s.encode()).decode()
base64.b64decode(b).decode()
Shell
echo -n 'testo' | base64
echo 'dGVzdG8=' | base64 -d
Domande frequenti
A cosa serve il Base64?+
Trasforma qualsiasi dato in testo semplice composto da 64 caratteri sicuri (A–Z, a–z, 0–9, + e /), così i dati binari come immagini o chiavi possono passare attraverso sistemi pensati per il testo, come email, JSON, XML, URL e HTML.
Il Base64 è una cifratura?+
No. Chiunque può decodificare il Base64 all’istante; non nasconde nulla. Non usarlo mai per proteggere password o dati personali.
Perché il Base64 è più grande dell’originale?+
Ogni 3 byte diventano 4 caratteri, quindi i dati codificati sono circa il 33% più grandi, più fino a due segni = di riempimento alla fine.
Cos’è il Base64 sicuro per URL?+
Una variante che sostituisce + con - e / con _, e di solito elimina il riempimento =, così il risultato si può usare in URL e nomi di file senza escape. È comune nei JSON Web Token (JWT). Il decodificatore di questa pagina accetta entrambe le varianti automaticamente.
Perché btoa() fallisce con il mio testo in JavaScript?+
La funzione btoa() del browser accetta solo caratteri fino al codice 255, quindi un testo con emoji o con la maggior parte delle lettere non latine dà errore. Bisogna prima codificare il testo in byte UTF-8, che è ciò che fa questo strumento.