Codifica e decodifica Base64 online

Converti testo, byte esadecimali o file in Base64 e decodifica il Base64 in testo leggibile. Supporta Base64URL, l’a capo MIME e oltre una dozzina di set di caratteri, con tutta l’elaborazione in locale nel tuo browser.

Funziona interamente nel tuo browser. Non viene caricato nulla.

Come si usa

  1. Scegli Codifica o Decodifica nella parte superiore dello strumento.
  2. Digita o incolla il testo, oppure fai clic su Apri file per codificare qualsiasi file.
  3. Se serve, modifica le opzioni Variante (standard o sicura per URL), Padding, A capo e Codifica del testo. Il risultato si aggiorna mentre scrivi.
  4. Copia il risultato, scaricalo oppure premi Scambia input e output per elaborarlo nella direzione opposta.

Che cos’è Base64?

Base64 è una codifica da binario a testo che rappresenta qualsiasi sequenza di byte con 64 caratteri ASCII stampabili: A-Z, a-z, 0-9, + e /, più il segno = usato come padding. Permette a dati binari come immagini, chiavi o file compressi di attraversare senza danni sistemi pensati per il testo, come email, JSON, XML, URL e HTML.

Il codificatore legge l’input tre byte (24 bit) alla volta e li divide in quattro gruppi da 6 bit. Ogni valore a 6 bit, da 0 a 63, seleziona un carattere dell’alfabeto. Quando la lunghezza dell’input non è un multiplo di tre, l’ultimo gruppo viene completato con uno o due segni =. Per questo l’output Base64 è sempre più grande di circa il 33% rispetto ai dati originali.

Base64 è una codifica, non una cifratura. Chiunque può decodificarlo, quindi non usarlo mai per nascondere password o segreti.

Base64 e Base64URL

Il Base64 standard usa + e /, che hanno un significato speciale negli URL e nei nomi di file. Base64URL, definito nella sezione 5 della RFC 4648, li sostituisce con - e _ e di solito omette il padding. Si usa nei JSON Web Token, in OAuth e ovunque un valore debba trovarsi all’interno di un URL. Il decodificatore di questa pagina accetta automaticamente entrambe le forme.

Base64 standardBase64URL
Caratteri 62 e 63+ /- _
Padding= obbligatorioFacoltativo, di solito omesso
Sicuro in URL e nomi di fileNoSì
Uso tipicoEmail (MIME), data URI, JSON, chiavi PEMJWT, OAuth, parametri URL

Usi comuni di Base64

  • Allegati email. MIME codifica gli allegati in Base64 andando a capo ogni 76 caratteri. Usa l’opzione A capo per riprodurre questo formato.
  • Incorporare immagini e file. I data URI inseriscono piccole immagini, font o icone direttamente in HTML e CSS. Vedi Immagine in Base64 e Base64 in immagine.
  • API e configurazione. JSON non ha un tipo binario, quindi le API inviano file, firme e chiavi come stringhe Base64. Anche i Secret di Kubernetes memorizzano i propri valori in Base64.
  • Autenticazione. L’autenticazione HTTP Basic invia username:password in Base64, e i JSON Web Token sono formati da tre segmenti Base64URL.
  • Certificati e chiavi. I file PEM contengono dati DER codificati in Base64, con un a capo ogni 64 caratteri.

Base64 nei linguaggi di programmazione

LinguaggioCodificaDecodifica
JavaScript (browser)btoa(binaryString)atob(base64)
Node.jsBuffer.from(str).toString('base64')Buffer.from(b64, 'base64').toString()
Pythonbase64.b64encode(data)base64.b64decode(data)
PHPbase64_encode($str)base64_decode($b64)
JavaBase64.getEncoder().encodeToString(bytes)Base64.getDecoder().decode(b64)
C#Convert.ToBase64String(bytes)Convert.FromBase64String(b64)
Gobase64.StdEncoding.EncodeToString(b)base64.StdEncoding.DecodeString(s)
Shellbase64 file.binbase64 -d file.txt

Nei browser, btoa accetta solo caratteri fino a U+00FF. Per codificare testo Unicode, convertilo prima in byte UTF-8, per esempio con TextEncoder, oppure usa questo strumento, che per impostazione predefinita codifica il testo in UTF-8.

Non solo Base64

Base64.is copre anche il resto della famiglia Base-N: Base32, Base58, Base62, Base85, Ascii85, basE91, Base45, esadecimale e binario. Se non sai quale codifica usa una stringa, prova il rilevatore di codifica, oppure confrontale tutte in una volta con Tutte le codifiche.

Specifiche

AlfabetoA-Z a-z 0-9 + /
Dimensione dell’output4 caratteri ogni 3 byte (circa 133%)
Padding= fino a un multiplo di 4 caratteri
StandardRFC 4648, sezione 4
Distingue maiuscole/minuscoleSì

Esempi

Input (UTF-8)Output
Hello, World!SGVsbG8sIFdvcmxkIQ==
Base64.isQmFzZTY0Lmlz
你好5L2g5aW9

Domande frequenti

I miei dati vengono caricati su un server?

No. La codifica e la decodifica avvengono interamente nel tuo browser con JavaScript. Il testo e i file che inserisci non lasciano mai il tuo dispositivo e, una volta caricata la pagina, lo strumento continua a funzionare anche offline.

Perché il testo decodificato è pieno di caratteri strani?
I dati sono binari (per esempio un’immagine o un file compresso) e non testo, oppure sono stati codificati con un set di caratteri diverso. Prova un’altra opzione in Codifica del testo, scegli l’output Esadecimale oppure usa Base64 in file per scaricare e identificare i byte.
Che cosa significano i segni di uguale alla fine?

Sono il padding. Base64 lavora a blocchi di quattro caratteri e il segno = riempie l’ultimo blocco quando la lunghezza dell’input non è un multiplo di tre byte. Un solo = indica che l’ultimo blocco codifica due byte, due indicano che ne codifica uno solo.

Di quanto aumentano le dimensioni dei dati con la codifica?

Base64 trasforma ogni 3 byte in 4 caratteri, quindi l’output è più grande dell’input di circa il 33%, più le interruzioni di riga se attivi l’a capo.

Base64 è una forma di cifratura?

No. Base64 cambia solo il modo in cui i dati sono rappresentati. Non ha una chiave e chiunque può decodificarlo, quindi per proteggere informazioni sensibili usa una vera cifratura come AES o TLS.

Tutti gli strumenti Base64 e di codifica

Strumenti per immagini

Immagine in Base64Codifica qualsiasi immagine come data URI, tag img, CSS o Markdown Base64 in immagineDecodifica Base64 o data URI in un’anteprima e in un file immagine da scaricare PNG in Base64PNG lossless con trasparenza come Base64 data:image/png JPG in Base64Foto JPEG come Base64 data:image/jpeg con controllo della qualità WebP in Base64Immagini WebP compatte come Base64 data:image/webp GIF in Base64GIF statiche e animate come Base64 data:image/gif SVG in Base64Grafica vettoriale SVG come Base64 data:image/svg+xml BMP in Base64Bitmap BMP in Base64, con conversione facoltativa in PNG ICO in Base64Favicon e file .ico come data URI Base64 AVIF in Base64Immagini AVIF compresse con AV1 come Base64 data:image/avif TIFF in Base64Scansioni e immagini per la stampa TIFF come testo Base64 Base64 in PNGSalva stringhe Base64 o data:image/png come file PNG, trasparenza inclusa Base64 in JPGDecodifica Base64 in una foto .jpg, con cursore della qualità per le conversioni Base64 in WebPDecodifica WebP in Base64 o converti immagini Base64 in file WebP più leggeri Base64 in GIFSalva GIF in Base64 con l’animazione intatta o converti immagini in GIF Base64 in SVGDecodifica icone e grafiche SVG in Base64 e riottieni i file .svg Base64 in BMPDecodifica Base64 in .bmp o converti immagini in bitmap a 32 bit Base64 in ICODecodifica icone Base64 o trasforma immagini Base64 in file favicon.ico Base64 in AVIFDecodifica immagini AVIF in Base64 o converti in AVIF dove supportato Base64 in TIFFSalva scansioni Base64 come TIFF o converti immagini in TIFF non compresso